valueChangeListener不会触发该方法,而只是重新加载页面

时间:2019-09-25 13:27:42

标签: jsf xhtml

无论何时selectonemenu发生onchange事件,我都希望在Bean中触发一个方法,在该方法中,我将重定向到新页面。但是,该页面只是重新加载而不会进入功能或触发任何错误。

<ui:fragment rendered="#{productPage.isIncludeGroupings()}">
    <div style="margin-left:auto;margin-right:auto;background-color:#F6F6F7;">
        <h1 style="margin-bottom:5px;font-weight:bold;font-size:18px;text-transform:none;">View More Options x6:</h1>
        <h:form>
            <h:selectOneMenu value="#{product.name}" onchange="this.form.submit()" valueChangeListener="#{productPage.valueChange}" immediate="true">
                <f:selectItems value="#{product.getProductGrouping()}" var="y" itemValue="#{y.memberName}" itemLabel="#{y.memberDescription}"/>
            </h:selectOneMenu>
        </h:form>
    </div>
</ui:fragment>

我实际上无法进入该功能或在Eclipse控制台中看到打印语句。

public void valueChange(ValueChangeEvent e){
        System.out.println("I was able to get in valuechange");
        try {
            routeManager.redirectToURL(routeManager.getRouteURL(RouteType.CATALOG_PRODUCT,"XL","T-Shirt"));
        } catch (IOException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        }
        FacesContext.getCurrentInstance().renderResponse();
}

0 个答案:

没有答案
相关问题