0

我在 JSF 1.2 上,想知道我看到的行为。我的 JSF 页面使用 a4j:jsFunction 启动进程,然后使用 a4j:poll 获取进度百分比。这个过程建立了一个对象列表,每个对象又包含一个列表。当 a4j:jsFunction 调用完成时,将重新呈现 a4j:outputPanel。此面板包含一个 selectBooleanCheckbox,它绑定到第二个列表中对象的布尔值:

<a4j:jsFunction name="validate" action="#{MigrationWizardValidateForm.validate}" reRender="validationResult, done"/>
...
<a4j:outputPanel id="validationResult">
    <ui:repeat value="#{MigrationWizardValidateForm.validationErrors}" var="validationError">
        <ui:repeat value="#{validationError.assignmentVisualisations}" var="assignmentVisualisation">
            <h:selectBooleanCheckbox value="#{assignmentVisualisation.assignment.mainLocation}"
...

我看到的是当进程加载对象时 mainLocation 为真。当外部重复获得它的列表时,这是真的。但是当 selectBooleanCheckbox 呈现时,它会以 false 调用 setMainLocation。

为什么这样做?

4

1 回答 1

0

相同形式的 a4j:poll 和 a4j:jsFunction 导致问题。将民意调查以单独的形式显示进度可以解决它。

于 2013-03-28T15:53:55.430 回答