JSF e richfaces

5 respostas
T

salve amigos
gostaria de saber como eu passo um objeto de uma página para outra.
Assim eu tenho o pg1.xhtml que tem um entity.id
e quero usar esse entity.id na pg2.xhtml.
Eu tentei fazer:

<a4j:commandButton id="id" action="#{pg2Action.add}" value="ID Complementar"> <f:param name="nome" value="#{entity.id}" />

e na pg2Action.add:

FacesContext.getCurrentInstance().getExternalContext().getRequestMap().get("nome");

mas o requestMap tá vindo vazio e acho que f:param só passa Strings
Obrigado

5 Respostas

FabricioPJ

Você deve criar um bean com a propriedade “id”, entre outras necessárias, e seus respectivos getters e setters.

Depois você deve mapear esse seu bean no arquivo faces-config.xml

Ai na página 2, voce chama seu bean.propriedade

T

na pg1 eu tenho o objeto entiy todo populado
poderia por favor explicar código como eu recupero ele na pg2?

G

Use:

<f:setPropertyActionListener target="#{pessoaMB.pessoa}" value="#{lista.pessoa}" />

Onde target, seria o MB que receberá o valor, e value o valor a ser injetado.

E na outra página leia as informações desse MB.

cs.santos0

iai cara…sussa?

entao, faz assim, supondo que HandlerPublicoAlvo seja injetado em HandlerVisao e os dois sao managed beans:

<managed-bean>
		<managed-bean-name>publicoAlvo</managed-bean-name>
		<managed-bean-class>
			br.com.plusoft.plusinfo.handlers.HandlerPublicoAlvo</managed-bean-class>
		<managed-bean-scope>session</managed-bean-scope>
					</managed-bean>

<managed-bean>
<managed-bean-name>visao</managed-bean-name>
		<managed-bean-class>br.com.plusoft.plusinfo.handlers.HandlerVisao</managed-bean-class>
		<managed-bean-scope>session</managed-bean-scope>
		<managed-property>
			<property-name>publicoAlvo</property-name>
			<property-class>br.com.plusoft.plusinfo.handlers.HandlerPublicoAlvo</property-class>
			<value>#{publicoAlvo}</value>
		</managed-property>
<managed-bean>

depois na HandlerVisao vc cria um atributo do tipo HandlerPublicoAlvo com o nome publicoAlvo e cria um set e get para ele…

é isso ai

T

ok muito obrigado a todos

Criado 15 de abril de 2010
Ultima resposta 18 de abr. de 2010
Respostas 5
Participantes 4