0

JSF の初心者なので、解決方法がわからない状況に遭遇しました。他の 2 つの selectOneMenu オブジェクト (year、businessType) の値に応じて、2 つの selectOneMenu オブジェクト (financialColumn、linesOfBusiness) を含むページがあります。FinancialColumn と linesOfBusiness の内容は、選択した年または businessType によって完全に異なる場合があります (すべてのコンポーネントは RequestScoped Bean です)。

<h:outputText value="Data Year:" />
<h:selectOneMenu id="year" value="#{YearOptions.year}" >
    <f:selectItems value="#{YearOptions.options}" />
    <f:ajax execute="@this businesstype" render="financialColumn linesOfBusiness" />
</h:selectOneMenu>

<h:outputText value="Business Type:" />
<h:selectOneMenu id="businesstype" value="#{BusTypeOptions.busListKey}" > 
    <f:selectItems value="#{BusTypeOptions.options}" />
    <f:ajax execute="@this year" render="financialColumn linesOfBusiness" />
</h:selectOneMenu>

<h:outputText value="Select Financial Amount to Report on:" />
<h:selectOneMenu id="financialColumn" value="#{FinColumn.finColumn}">
    <f:selectItems value="#{FinColumn.options}"/>
</h:selectOneMenu>

<h:outputText value="Select Lines of Business to include:" />
<h:selectManyListbox id="linesOfBusiness" value="#{LobOptions.linenums}" size="5" >
    <f:selectItems value="#{LobOptions.options}"/>
</h:selectManyListbox>
:
:
<h:commandButton value="Submit" type="submit" action="/pages/report/lines-of-business-summary" 

私が理解しようとしている問題は、レポート ページに表示される FinancialColumn と linesOfBusiness の元の値を変更したり、元の値に戻したりしない限りですが、businessType の値を変更すると、financialColumn と linesOfBusiness の値が完全に変化します。 「•criteria:financialColumn: 検証エラー: 値が無効です」を受け取ります。なぜこれが起こっているのですか、どうすれば修正できますか?

ありがとう

4

0 に答える 0