Olá pessoal
Eu gostaria de saber se existe diferença
entre Backing Bean e ManagedBean?
Será que alguém poderia me dar uma ajuda?
[]'s.
Olá pessoal
Eu gostaria de saber se existe diferença
entre Backing Bean e ManagedBean?
Será que alguém poderia me dar uma ajuda?
[]'s.
Segundo o livro Core JSF, a diferença entre um e outro é que o backing bean possui referências a um ou mais componentes da página JSF associada.
Exemplo:
[code]// Managed bean
public class UsuarioBean {
private String login, senha;
// Getters e setters
}
// Backing bean
public class UsuarioBean {
private UIInput login, senha;
// Getters e setters
}[/code]
Para mim eram todos iguais.
Não sabia dessa diferença.
[quote=ricardocomp]Olá pessoal
Eu gostaria de saber se existe diferença
entre Backing Bean e ManagedBean?
Será que alguém poderia me dar uma ajuda?
[]'s.[/quote]
Sinceramente, para mim, não existe qualquer diferença.
Mas isso é minha opinião pessoal, por mais que diversos autores comentem o contrário.
Enfim, no final das contas, se você chamar de managed bean (minha preferência) ou backing bean o pessoal costuma entender sem problemas
Eles podem até dar nomes diferentes, mas são iguais. Nunca gostei do Core JSF mesmo.
Se eu misturar o acesso a um componente com outras coisas devo mudar de nome? Nem pensar.
Hehe esse negócio de diferenciar um do outro parece que não agradou o pessoal
O que o tnaires disse está correto, mas gostaria de acrescentar a minha opinião: o fato de ter referência a componentes é mais uma consequência de ele ser um backing-bean, e não a causa.
Costumo pensar da seguinte forma:
Todo backing-bean também é um managed bean, mas nem todo managed bean é um backing-bean. Pode ser um objeto de negócio, por exemplo.
Só completando o que foi já dito.
O conceito de backing bean vem do conceito de “code behind” , o codigo por detrás. Ou seja, é o codigo que controla a página. Mas no caso, esse codigo fica num objeto bean.
O prefixo Managed sempre identifica algo cujo ciclo de vida é controlado por algum tipo de container. Por exemplo, no JMX tb existe Managed Beans, assim como no JPA e no Spring. No JSF significa apenas que o bean tem seu ciclo de vida controlado.
Portanto, um Backing Bean é um Managed Bean, mas nem todo o Managed Bean é um Backing bean.
Porque existem poucas ocasiões onde se uma um bean que é managed e não está ligadoa a uma página parece que são a mesma coisa, mas são conceitos diferentes. Diferenciar conceitos é importante, ao contrário do que muitos possam pensar.
Mais aqui
Eu concordo com o sergiotaborda porque com esta diferenciação a estrutura do projeto fica mais organizada. Acho que fica confuso tratar os componentes junto com as regras de negócios. A partir disso podemos assumir que o backing bean não é obrigatório e geralmente é utilizado quando é necessário fazer validações de componentes em conjunto ou para tratar algum tipo de comportamento específico.
Inté
Sinceramente eu lí conceitos da apostila do algaworks e do Core 3rd Edition e não conseguiu entender…
Afinal de contas, o que é um backing bean? :oops:
Algum pode me dar um exemplo do que posso fazer com ele na prática?