Olá, estou iniciando meus estudos em JavaServer Faces e tenho algumas dúvidas:
Os Managed Beans (BackingBeans) são os Controllers do MVC ?
Se os Managed Beans (BackingBeans) precisam possuir atributos que são automaticamente preenchidos com os dados dos formulários da aplicação, como os atributos dos meus JavaBeans vão ser preenchidos para que estes sejam persistidos via Hibernate, por exemplo ?!
Qual a melhor forma de arquiteturar uma aplicação em JSF ?
Dá pra tirar os métodos de fluxo da aplicação (aqueles q retornam pra qual “página” ir) do controller ?
Olá, estou iniciando meus estudos em JavaServer Faces e tenho algumas dúvidas:
1- Os Managed Beans (BackingBeans) são os Controllers do MVC ?
2- Se os Managed Beans (BackingBeans) precisam possuir atributos que são automaticamente preenchidos com os dados dos formulários da aplicação, como os atributos dos meus JavaBeans vão ser preenchidos para que estes sejam persistidos via Hibernate, por exemplo ?!
3- Qual a melhor forma de arquiteturar uma aplicação em JSF ?
4- Dá pra tirar os métodos de fluxo da aplicação (aqueles q retornam pra qual “página” ir) do controller ?
1- Sim
2- Vc coloca o seu bean dentro do Managed Bean
public classe TesteMBean{
private TesteBean teste;
}
na pagina vc usa nos values com testeMBean.teste.atributo que vc quer.
3-Eu colocquei os metodo para chamar meus delegates e todo o resto funciona como antigamente.
O JSF veio so para entrar a interface com o usuario tornando mais rapido o desenvolvimento.
4- Vc não quer que ele retorne para lugar nenhum?!?! :shock:
C
carlosfpaixao
Olá, vlw pelas respostas… aproveitando, gostaria de fazer uma pergunta…
1 - Para realizar esse preenchimento dos atributos de meus beans a partir da view como em ${testeMBean.teste.atributo} ; eu preciso q meu bean esteja instanciado no backing bean. O JSF faz isso pra vc, ou é necessário instanciá-lo? Posso utilizar o IoC do Spring Framework?
afamorim
Vc precisa instacia-lo, eu faço isso no meu construtor, apesar se não estiver instanciado nao vai dar nullpointer, pois a tag lib trata isso para vc.