我有一个使用Java 8,JSF 2.2和在Tomcat 8上运行的primefaces 5.3的JSF项目。
我有包含参数的页面(http://server/app/page?x=1)。
我有一个p:commandButton
表单用AJAX更新了一些页面部分。当我提交表单时,POST请求是正确构建的,并且还包含与f:param
一起传递的页面参数(x = 1)。
然而,我有p:selectOneMenu
的其他形式,p:ajax
和AJAX监听器更改了一些其他表单组件。但是AJAX调用 NOT 在这种情况下将页面f:param
参数(x = 1)包含在POST消息中,因此支持bean无法从DB读取正确的数据并且请求生成页面部分。
问题是:如何将网页参数传递给p:ajax
来电......
我知道有一个选项可以将参数作为参数传递给侦听器,但在这种情况下,参数对于用于构建页面的其他bean和组件是不可见的。
我正在使用@RequestScoped
bean和@ManagedProperty
来设置页面参数,它使代码干净简单。使用所有XHTML调用的参数将是一团糟......