我会解释。如何通过param get on click按钮并传递另一个bean并重定向到另一个页面。代码是:
的index.xhtml
<h:form>
<h:dataTable ... >
<h:column>
<f:facet name="header">Responder</f:facet>
<h:commandButton value="Responder e-mail" class="btn btn-info" action="#{respostaBean.responder(registro)}" />
</h:column>
</h:dataTable>
</h:form>
当在commandButtton中单击时,我想要显示一个bean:
RespostaController.java
@SessionScoped
@ManagedBean(name = "respostaBean")
public class RespostaController implements Serializable {
...
public String responder(Registro registro){
manager.getTransaction().begin();
manager.persist(resposta);
manager.getTransaction().commit();
manager.close();
return "responder?faces-redirect=true";
}
...
点击按钮后需要显示此页面并在另一页面中传递show的显示。
responder.xhtml
<f:metadata>
<f:viewParam name="companyId" value="#{registroBean.registro.id}" />
<f:viewAction action="#{registroBean.responder}" />
</f:metadata>
Responder protocolo:
<h:outputText value="#{registroBean.registro.protocolo}" />
但由于我无法传递参数,因此协议未显示。恢复:我只想将参数传递给另一个URL,因为我想在另一个页面上使用它以及另一个bean(respostaBean和registroBean)。因为我有两个bean,它们之间有一对一的关系,所以我需要将参数传递给responder.xhtml页面。你能帮助我吗?谢谢!