我们总是需要传递参数的URL来检索他们?
在我的例子,我不能去找回我的PARAM命名为“研究”; 我应该怎么做呢?
XHTML文件发送方:
<h:commandButton value="Send" type="button" action="pretty:participant">
<f:param name="study" value ="test" />
</h:commandButton>
XHTML文件Recever:
<h:outputFormat value="Print : {0} ">
<f:param value="#{study}" />
</h:outputFormat>
漂亮的XML配置:
<url-mapping id="participant">
<pattern value="/Participant/New/" />
<view-id value="/addParticipant.xhtml" />
</url-mapping>
如果你想使用prettyfaces做到这一点,是的,你必须因为它是一个网址rewritting工具,所以PARAMS必须进入网址。 为了您的代码工作,你应该使用f:viewParam
标签在接收器页面使用它之前:
<f:metadata>
<f:viewParam name="study" value="#{destinationBean.study}" />
</f:metadata>
<h:outputFormat value="Print : {0} ">
<f:param value="#{destinationBean.study}" />
</h:outputFormat>
不过,如果你想摆脱通过URL发送参数的,你有闪光范围作为替代。 然而,这涉及到JSF而不是Prettyfaces。 如果你想要去的这种解决方案我强烈建议你避免钻嘴鱼科JSF 2.x的早期版本,因为它们是越野车有关这一点。
是的,你必须从某个地方存储参数的URL再取回。 你可以用无论是做这个路径参数或查询参数 。 通常,您将参数bean属性绑定您的映射。 这样,你可以检索使用这指的是你的bean属性的标准EL表达式在页面的价值。
文章来源: PrettyFaces & JSF 2 : Do we always need to pass parameters to the URL to retrieve them?