Srs, boa tarde!
Eu observei que nessa aula a classe LivroBean tem uma interface apontada para classe Serializable. Eu não lembro de haver comentários sobre isso no vídeo. Alguém sabe dizer qual o motivo desse relacionamento?
Obrigado.
Srs, boa tarde!
Eu observei que nessa aula a classe LivroBean tem uma interface apontada para classe Serializable. Eu não lembro de haver comentários sobre isso no vídeo. Alguém sabe dizer qual o motivo desse relacionamento?
Obrigado.
Olá Leandro, quando o escopo do seu ManagedBean é diferente de request, ele precisa implementar Serializable. O JSF até tolera sua não implementação, mas se for usar CDI sequer seu código compilará? Qual o motivo disso? Bem, se está em escopo de request, a cada requisição um novo bean será criado, logo, não precisamos nos preocupar em guardá-lo em algum lugar para ficar vivo. Porém, se o escopo dele é maior do que request (SessionScoped ou ApplicationScoped) esse bean terá que ser armazenado em algum lugar para que seja possível recuperá-lo depois. Que lugar é esse? Pode variar de servidor para servidor, mas no final você quer é serializar esse objeto em algum lugar (disco, txt, session, etc.) e depois deserializa-lo. A interface Serializable é uma interface de marcação, serve apenas para dizer que aquele objeto pode ser serializado. Lembro até hoje com RichFace 3.X que havia um componente que não implementava Serializable e quando o servidor tentava serializar a sua view eu recebia "NotSerializableException".
Espero ter ajudado!
Flávio, bom dia!
Sim. Agora está claro. Obrigado.
Beleza Leandro! Se tiver mais dúvidas, não deixe de postar no forum :) Abraço!
Flavio, combinado.