我正在使用带有 primefaces 3.3.1 的 JSF 2。
我在我的 template.xhtml 页面中使用了表单标签,并将我的所有页面都包含在其中。所以所有页面都在同一个表单下。我的场景是:我有两个面板,一个是客户搜索面板,另一个是客户搜索结果面板。客户搜索面板包含一些文本框和一个命令按钮。在该文本框中,我将提供有关客户的一些输入,然后单击命令按钮。之后,我必须加载包含一个带有搜索结果的数据表的客户搜索结果面板。
最初我将只加载客户搜索面板。单击命令按钮后,只有我会加载客户搜索面板。在我的客户搜索面板的那个命令按钮中,我在更新属性中给出了客户搜索结果面板的 ID。像
<p:commandButton value="click" action="#{bean.action}" update="cust_search_panel"/>
当我按下命令按钮时,jsf 说“找不到标识符为 cust_search_panel 的组件”。因为最初我不会加载客户搜索结果面板,因此 id 将不存在。
使用 primefaces 2.2.1 时没有问题,因为如果组件不在表单中,那么他们将添加信息消息,说明“找不到标识符为 cust_search_panel 的组件”。但在 primefaces 3.3.1 中,他们将该信息消息更改为错误消息。所以现在我的页面没有因为这个错误而被加载。
当我们收到诸如“找不到标识符为 cust_search_panel 的组件”之类的消息时,如果可以从 facescontext 中删除该错误消息,那么我的页面将正确加载吗?
除了这个,我还没有找到任何解决方案。谁能帮我解决这个问题。
提前致谢。