我有两个.The页面(例如page1和page2 ),第一个页面用用户数据表示表。
<h:dataTable value="#{dataBean.collection}" var="contact">
<h:column>
<f:facet name="header">
First name
</f:facet>
<h:outputText value="#{contact.firstName}"/>
</h:column>
<h:column>
<f:facet name="header">
Last Name
</f:facet>
<h:outputText value="#{contact.secondName}"/>
</h:column>
<h:column>
<f:facet name="header">
Phone
</f:facet>
<h:outputText value="#{contact.phone}"/>
</h:column>
<h:column>
<f:facet name="header">
Details
</f:facet>
<h:button outcome="#{dataBean.doSomeMagic(contact)}" value="Detailed info" />
</h:column>
</h:dataTable>所以,当我们点击“详细信息”按钮时,我们应该被重定向到page2,它显示了当前user.The的详细信息问题是什么是组织这两个页面之间数据传输的最佳方式。我试图开发一些方法(“doSomeMagic”)来保存bean状态并返回导航规则的字符串,但我总是从表的最后一行获取用户。
public String doSomeMagic(UserBean userBean){
beanToDisplay = userBean;
return "user";
}Page2显示来自beanToDisplay字段的信息。我不想重复发明轮子,想知道解决这个问题的基本方法,task.Thank你的回复!
发布于 2015-01-20 21:48:25
您可以使用requestScope来实现此目的。通过在requestScope中设置数据,您可以在下一次请求(页面)中访问它。
在本例中,您可以在控制器中的request中设置用户数据,并在下一个页面中读取该数据。
https://stackoverflow.com/questions/28046852
复制相似问题