在两个页面之间传递参数而不使用JSF和会话变量中的url

时间:2014-10-13 09:15:36

标签: jsf primefaces

我有一个页面object.xhtml,它显示了对象列表。我想点击一个对象并在另一个页面上显示其详细信息。我不想通过url或使用session的变量传递参数。

1 个答案:

答案 0 :(得分:2)

假设您使用的是 p:datatable ,则可以创建一个列以重定向到编辑页面:

                <p:column headerText="Action">
                    <p:commandLink ajax="false" title="Edit" action="target.xhtml"
                        value="Edit">
                        <f:param name="objectId" value="#{object.id}" />                        
                    </p:commandLink>
                </p:column>

在您的支持bean中,您可以使用如下参数:

    FacesContext context = FacesContext.getCurrentInstance();
    String objectId = context.getExternalContext()
                .getRequestParameterMap().get("objectId");