Joh*_*ick 15 java jsf httpwebrequest
我正在寻找的是在value属性中有一个f:param标签,其中包含我自己选择的Object.然后,在操作的支持bean方法中,我希望能够从请求中提取此Object.(对不起,如果我的术语不太好,我是JSF的新手).
现在,我可以在请求参数中传递Strings就好了.我也意识到参数总是在http get或post中成为一个String,所以我并没有真正传递一个java对象.我也意识到这样做的一种方法是传递某种"id",然后支持bean可以使用它来识别有问题的对象.
然而,我想知道的是,JSF是否允许我透明地执行此操作.我可以指定任何对象作为参数的值,然后在动作方法中从RequestMap中获取它吗?
Bal*_*usC 20
你不能这样做<f:param>.它需要附加到请求的URL,所以它确实需要是一个String.只需使用<f:setPropertyActionListener>.
例如
<h:commandLink value="Submit" action="#{bean.submit}">
<f:setPropertyActionListener target="#{bean.otherBean}" value="#{otherBean}" />
</h:commandLink>
Run Code Online (Sandbox Code Playgroud)
这样#{otherBean}就可以作为this.otherBean内部submit()方法使用.这样,您也不必惹请求参数地图(对于这情况下<f:param>,我宁愿使用了托管属性注射用#{param.name}代替).
替代品<h:inputHidden>与a Converter或使用Tomahawk 组合使用<t:saveState>.另请参阅此博客文章以获取更多背景信息和示例.
| 归档时间: |
|
| 查看次数: |
18339 次 |
| 最近记录: |