我的JSF模板有一个包含另一个页面的部分:
<p:outputPanel id="foo">
<ui:include src="#{bean.page}" />
</p:outputPanel>
bean.page
在bean的@PostConstruct
方法中设置为默认页面 a.xhtml ==&gt;页面a已加载,一切都按预期运行。
现在,我将bean.page
设置为 b.xhtml 并更新<p:outputPanel id="foo">
==&gt;页面b已加载,但每当我点击<h:commandButton>
时,其动作方法永远不会被调用。
How to ajax-refresh dynamic include content by navigation menu? (JSF SPA)的答案是,当包含的网页包含<ui:include>
时,<h:form>
页面中的任何回发都会失败;原因是缺少视图状态。但是,当我点击<h:commandButton>
并使用Firebug分析发布的数据时,我看到具有正确值的param javax.faces.ViewState 已发送到服务器。但无论如何,永远不会调用按钮的action-method。