ADF selectOneChoice交替触发ValueChangeListener

时间:2019-05-13 11:34:46

标签: jsp oracle-adf

我有一个SelectOneChoice,其中包含一个通过ManagedBean填充的SelectItem列表。该SOC具有一个ValueChangeListener,可以触发BackingBean中的某些操作。 问题在于,有时会触发ValueChangeListener,而有时不会触发。更进一步,当ValueChangeListener恢复工作时,有时它没有将正确的数据发送到侦听器。

使用JDev 11g R1(11.1.1.7.0)。

我的SelectOneChoice:

<af:selectOneChoice label="Change budget code" id="socChangeBudgetCode"
   valueChangeListener="#{backingBeanScope.BudgetBean.changeBudgetCode}" 
   autoSubmit="true"
   disabled="#{NewBudgetBean.itemCount &lt;= 1}"
   value="#{bindings.budgetNum.inputValue}">
   <f:selectItems value="#{NewBudgetBean.items}" id="si1"/>
</af:selectOneChoice>

我的ValueChangeListener:

public void changeBudgetCode(ValueChangeEvent vce) {
   System.out.println("BudgetBean.changeBudgetCode(); old = " + vce.getOldValue() + "; new = " + vce.getNewValue());
   budgetNum = (String)vce.getNewValue(); // budgetNum is a member in BudgetBean
   callBudjectDetailsWS(); // callBudjectDetailsWS uses the value in budgetNum and call a webservice to do some work
}

0 个答案:

没有答案