Action em JSF

5 respostas
Hempx

Olá a todos,
sou iniciante em JSF e estou precisando quando eu chamar um link, por exemplo “cadastro.jsp”, chamasse uma função do meu back bean. Tipo em struts que você chama uma Action, essa action faz alguma coisa e faz um forward para a pagina JSP. Resumidamente o que preciso é que sempre que chamar certa pagina, antes chame uma determinada função do back bean.

Obrigado :wink:

5 Respostas

urubatan

primeiro:
esqueça de como tu fazia as coisas no struts …

depois, pega um tutorial de JSF pra ler …

pronto, agora tu sabe como fazer isto :smiley:

afamorim

Meu pelo que eu entendi vc quer carregar alguma funcionalidade no momento em que a página for carregada.

é necessário uma lida nas funcionalidades basicas do JSF, mais basicamente cada funcionalidade erá seu bean respectivo, configurado num arquivo facesconfig, sendo assim cada vez que vc abre uma página o framework já ira instanciar as funcionalidades do bean, ou seja o constutor é executado, nesse momento vc pode carregar listas entre outras coisa.

Hempx

afamorim:
Meu pelo que eu entendi vc quer carregar alguma funcionalidade no momento em que a página for carregada.

é necessário uma lida nas funcionalidades basicas do JSF, mais basicamente cada funcionalidade erá seu bean respectivo, configurado num arquivo facesconfig, sendo assim cada vez que vc abre uma página o framework já ira instanciar as funcionalidades do bean, ou seja o constutor é executado, nesse momento vc pode carregar listas entre outras coisa.

Hum… bem por ae que estou tentando chegar. O problema que o construtor é chamado apenas a primeira vez que o back bean é criado(ou sessão sei lá). Eu quero uma ação que é chamada toda hora quando uma pagina é solicitada, mesmo que seja na mesma sessão. Alguma coisa como onload do javascript.
abraço.

afamorim

Meu rei, diga exatamente o que vc quer fazer dando um exemplo, se o JSF não tiver alguma coisa que faça isso arranjamos um armengue.
8)

Hempx
afamorim:
Meu rei, diga exatamente o que vc quer fazer dando um exemplo, se o JSF não tiver alguma coisa que faça isso arranjamos um armengue. 8)

Andei fuçando aqui e consegui fazer o que eu queria, que é, chamar um metado do back-bean antes de carregar um jsp. Apenas coloquei esse scriptlet:

<%
	String param = (String) request.getParameter("param");

	FacesContext facesContext = FacesContext.getCurrentInstance();

	ValueBinding vb = facesContext.getApplication().createValueBinding(
			"#{testBean}");
	TestBean value = (TestBean) vb
			.getValue(facesContext);
	if (value == null) {
		throw new IllegalStateException(
		"managed bean not found");
	}
	
	value.fazAlgo(param);
%>

vlw pela força :wink:

Criado 21 de setembro de 2006
Ultima resposta 26 de set. de 2006
Respostas 5
Participantes 3