【问题标题】:JSF valueChangeListener reacting only on second try?JSF valueChangeListener 仅在第二次尝试时做出反应?
【发布时间】:2010-09-16 10:11:16
【问题描述】:

我的 JSF 页面有两个下拉列表,我想根据第一个中选择的值加载第二个。但是,只有在我第二次更改选择时才检测到“onchange”事件!

网页代码sn-p:

<h:form id="selectRegion">
    <h:selectOneMenu id="governorate"
            value="#{SearchView.governorate}"
            styleClass="mediumInput" immediate="true"
            valueChangeListener="#{SearchView.goverValueChanged}"
            onchange="submit();">
            <f:selectItems value="#{SearchView.goverItemsList}" id="govItems" />
    </h:selectOneMenu>

    <h:selectOneMenu id="district"
            value="#{SearchView.district}"
            styleClass="mediumInput">
            <f:selectItems value="#{SearchView.districtItemsList}" id="distItems" />
    </h:selectOneMenu>
</h:form>

<h:form id="SearchFor">
<hx:commandExButton
    id="button1" styleClass="btn" type="submit"
    value="Search" action="#{SearchView.searchAction}"
    onclick="document.getElementById('selectRegion').submit();">
</hx:commandExButton>
</h:form>

问题是 goverValueChanged(ValueChangeEvent event) 仅在我第二次而不是第一次修改省的值时才被调用(我将系统放在 goverValueChanged(ValueChangeEvent event) 中知道这一点)。

有人知道可能出了什么问题吗?提前致谢!我正在使用 JSF 1.1 并在 IBM WAS 上运行

【问题讨论】:

    标签: java jsf jakarta-ee websphere


    【解决方案1】:

    上次和IBM和JSF 1.1打架是很久以前的事了,但我隐约想起了一些古老的JSF 1.1 bug,导致valueChangeListener在初始值为null时不会被触发。我建议将初始值(value="#{SearchView.governorate}" 后面的属性)设置为空字符串或其他内容。

    您当然也可以将 JSF 1.1 升级到最新版本的 JSF 1.1_02。它有相当多的功能性错误修复,也许它也会修复这个(和其他)问题。 IBM WAS 5.x 附带了一个非常早期的 JSF 1.1 版本,其中包含一些类似的奇怪错误。或者,也许您正在使用 IBM WAS 6.x,那么您也可以完全转储 JSF 1.1 并选择改进后的 JSF 1.2。您可以从档案库right here 下载 JSF 库。

    【讨论】:

    • 感谢您的回复,我尝试了初始化的想法,但没有成功...我认为我们应该升级到 JSF 1.2
    • 可以肯定:是 HTML/JS 代码不调用submit(),还是只是简单地跳过 valueChangeListener 方法的 JSF 代码?作为穷人的调试,将alert('blah')添加到onclick以排除一个和另一个,即onclick="alert('Onclick called!'); submit();"
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-04-15
    • 2019-08-15
    • 1970-01-01
    • 1970-01-01
    • 2017-10-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多