h:带有ajax的commandbutton调用错误的动作方法

时间:2013-07-19 07:34:20

标签: jsf action actionlistener commandbutton

我的jsf <h:commandButton>带有<f:ajax>标记有问题。如果它具有<f:ajax>标记,则会调用辅助bean中的其他actionactionListener方法。如果它没有<f:ajax>标记,则会调用自己的action方法。 这是我的片段:

 <h:form>
    <h:panelGroup id="loanContent" layout="block">
        <ui:include src="#{mainView.typePage}.xhtml"/>
    </h:panelGroup>
    <h:commandButton id ="rLoanBtn" value="Create" action="#{mainView.createNewType}">
        <f:ajax execute="loanContent" render="@form"/>
    </h:commandButton>  
 </h:form>

如果我省略<f:ajax execute="loanContent"/>部分,它可以正常工作。如果我按原样离开,它会调用其他方法来负责同一表单的其他按钮。 Btw mainView支持bean是ViewScoped托管bean。

1 个答案:

答案 0 :(得分:4)

大家好我找到了原因。如果我有<type = "button">属性与其他按钮,它会通过在其实际方法之前绑定到其他按钮的方法。所以我省略了它然后它工作正常。谢谢。