您好我有一个代码:
<p:commandLink value="#{user.strUserid}" action="test.xhtml?faces-redirect=true"/>
如何将参数传递给test.xhtml以获取所述页面中的值?
我尝试使用<f:param>
代码。但是可以在test.xhtml
页面中获取该值。
请建议。
答案 0 :(得分:8)
将其替换为<h:link>
<h:link value="#{user.strUserid}" outcome="test.xhtml">
<f:param name="foo" value="bar" />
</h:link>
并使用<f:viewParam>
将其设置为与目标页面相关联的bean的属性
<f:metadata>
<f:viewParam name="foo" value="#{bean.foo}" />
</f:metadata>
答案 1 :(得分:5)
然后我认为你需要尝试<f:setPropertyActionListener ..
<h:commandButton action="#{testBean.takeParam}" >
<f:setPropertyActionListener target="#{testBean.myStringVal}" value="something" />
</h:commandButton>
然后你可以在你的bean类中获得这个值
@SessionScoped
public class TestBean{
public String myStringVal;
public void setMyStringVal(String myStringVal) {
this.myStringVal = myStringVal;
}
}
public void takeParam{
System.out.println("String Value: "+myStringVal);
}