Jsf a4j渲染器不工作

Jsf a4j渲染器不工作,jsf,richfaces,ajax4jsf,Jsf,Richfaces,Ajax4jsf,我有一个类似于下面xhtml页面中的模式面板 <h:form> <a4j:commandLink action="" rerender="panel1"> </h:form> <a4j:outputPanel id="panel1"> <rich:modalpanel> <a4j:form> <h:panelgroup binding=#{mybean.pane

我有一个类似于下面xhtml页面中的模式面板

<h:form>
    <a4j:commandLink action="" rerender="panel1">
</h:form>

<a4j:outputPanel id="panel1">
    <rich:modalpanel>
        <a4j:form>
            <h:panelgroup binding=#{mybean.panel}/>
                <a4j:commandButton id="save">
        </a4j:form>
    </rich:modalpanel>
</a4j:outputPanel>

当我点击a4j命令链接时,我想用不同的当前值显示模式面板。如果模态面板内没有a4j:form,则其工作正常。但我想在单击save按钮时验证并保存模态面板中的属性,因此无法继续执行表单组件。但奇怪的是,当我添加a4j:form时,面板组停止重新渲染值。请帮我解决这个问题

我也试着将两者放在同一个表单中,但它以一种非常不规则的方式工作。

也许可以这样尝试:

<h:form>
<a4j:commandLink action="" rerender="panel1">
</h:form>



<rich:modalpanel>
  <h:form>
     <a4j:outputPanel id="panel1">
     <h:panelgroup binding=#{mybean.panel}/>
     <a4j:commandButton id="save">
     </a4j:outputPanel>
  </h:form>
</rich:modalpanel>


对我来说,Popuppanel也适用于a4j:commandLink标记,没有重新加载属性render@enricko在RichFaces 3中,有
重新渲染器
。从RichFaces 4中,这将重命名为
render
。您必须使用richfaces3吗?如果3不是必须的,也许你可以切换到4并用弹出面板来尝试。改变richfaces的版本只能作为最后的手段。这是行不通的吗?尝试使用
而不是
。另外,请确保您的托管bean具有会话作用域,或者是托管bean类声明中带有
@KeepAlive
注释的请求作用域。@Luiggi Mendoza-我现在已经尝试过了。但仍然不起作用。当我放置一个正常的输入文本时,它会正常工作,但是这个面板组不会被重新渲染。这个面板组是使用bind属性动态创建的,这是导致这种行为的原因吗?您使用的是哪个JSF版本,1.2还是2.x?