【发布时间】:2014-03-20 15:23:56
【问题描述】:
我是 JSF 新手,想对现有代码进行修改。虽然代码运行良好,但我遇到了 A4J(Rich faces)onchange 事件的问题。
我这里相关的技术栈是 JSF1.2,RichFaces 3.3
sn-p代码如下:
<h:selectOneMenu required="#{order.required}"
id="modelCBFS" label="Model" value="#{order.modelDTO}" converter="ModelConverter">
<f:selectItem itemLabel="-Select-" itemValue =""/>
<f:selectItems value="#{order.modelDropDown}" />
<a:support ajaxSingle="false" limitToList="true"
reRender="elevationCBFS"
event="onchange"
action="#{order.modelChanged}"
onsubmit="onHourGlass()" oncomplete="offHourGlass()"/>
</h:selectOneMenu>
现在,当上面的代码在页面上呈现时,ajax 事件被触发,但 JSF 页面不会通过第 4 和第 5 阶段(更新值和调用应用程序阶段),仅针对第一个 onchange 事件! 它虽然适用于后续请求。此外,每个其他组件的 onchange a4j 事件都可以正常工作。
当我在网上研究时,调试问题的解决方案是使用 FacesContext 并使用其中的调试消息。但这并没有在当前应用中配置。
有人可以帮我解决问题吗?或任何可能的根本原因表示赞赏。
【问题讨论】: