【问题标题】:How do I avoid using nested forms in Richfaces 4 + How do I use a4j:push in Richfaces 4?如何避免在 Richfaces 4 中使用嵌套表单 + 如何在 Richfaces 4 中使用 a4j:push?
【发布时间】:2011-03-10 18:47:36
【问题描述】:

我正在使用 Richfaces 4 CR1 + JSF 2.0。我有两个问题:

1) 我知道 JSF 中不允许嵌套。它只是不是。 这是一个用例 - 我有一个母版页,其中包括 header.xhtml 和 footer.xhtml 与

    <ui:include src="header.xhtml"/> 
    <h:form>
      <rich:tabPanel switchType="ajax"..>
        <rich:tab ..>
          <ui:include src="/includes/page1.xhtml" .../>
        </rich:tab>
        <rich:tab ..>
          <ui:include src="/includes/page2.xhtml" .../>
        </rich:tab>
     </rich:tabPanel>
  </h:form>
  <ui:include src="footer.xhtml" .../>

&lt;rich:tabPanel ../&gt; 需要用&lt;h:form.../&gt; 包裹。而且由于我的每个选项卡实际上都是另一个 xhtml 页面,因此其中一些具有 &lt;rich:togglePanel ../&gt; 之类的控件,需要在其周围加上 &lt;h:form ../&gt; 标记...! 那么我该如何以最好的方式处理这个问题呢?

PS:我提到了this问题,甚至我的问题的答案可能在于&lt;a4j:region ../&gt;

2) 如何在 Richfaces 4 中使用a4j:push?文档仍在进行中。示例代码是here 但我无法理解以下行 -

<a4j:push address="#{channelName}@chat" .. />

非常感谢这两个方面的任何帮助! :)

【问题讨论】:

    标签: jsf-2 richfaces


    【解决方案1】:

    Max Katz 在电子邮件链中给出的上述问题的答案是

    1) 使用全局形式。提交时,只会处理当前活动的标签组件

    2) Max Katz、Ilya Shaikovsky 和 ​​Exadel/Richfaces 的伙计们非常友好地在 ajax 上发布了操作指南:push here

    感激不尽! :)

    【讨论】:

    • 嗨尼基尔。我和你有同样的问题。全局形式是什么意思?您能否发布解决方案的快速 sn-p?谢谢
    • @Thomas,对不起,我可能来晚了。上面的代码保持不变,只是 page1 和 page2 中的内部组件应该被包裹在 a4j:region 中。就需要
      的组件而言,在 switchType ajax 中的 AFAIK,框架无法将最外面的 作为这些组件的父级,因此可用的两个选项是 1) 使用备用组件,2) 更改switchType 到服务器,以便框架在生成视图根树时很容易知道内部组件的父级。
    猜你喜欢
    • 2012-02-11
    • 2011-11-17
    • 2011-12-23
    • 2013-06-11
    • 2012-02-11
    • 2014-10-30
    • 2015-10-22
    • 2011-09-16
    • 2011-08-10
    相关资源
    最近更新 更多