`

jsf action actionListener valueChangeListener 的区别

阅读更多
弄了一天的jsf 了,能和spring +hibernate 整合了
首先看看事件模型的,几个区别吧

action()处理的是业务逻辑.实际上JSF会自动产生一个"预设的ActionListener"来处理事件,并根据其返回值决定页面跳转.第五阶段:调用应用执行,    会影响到页面间的导航(navigation)。主要处理一些业务逻辑并返回几个业务逻辑结果(String类型),JSF的导航系统将会根据这个来选择恰当的下一个页面. 会提交表单.
    ActionListener (事件监听器)是用于解决只影响用户界面的事件 ,    特别地,在beans的form数据被加载和触发验证前被调用 , 用immediate=“true”指明这个行为不触发验证 , 在监听器调用后,会重新显示表单 , 不应用导航规则,不重定向页面
   Action   隶属于按钮、超链接和图形映射控件,自动提交对应表单 。
   ValueChangeListener    隶属于单选框、组合框、列表框、复选框、文本框等控件,需要用onclick=“submit()”或onchange=“submit()”的方式提交表单

导航配置

<navigation-rule>
        <from-view-id>/pages/index.jsp</from-view-id>
        <navigation-case>
            <from-outcome>success</from-outcome>
            <to-view-id>/pages/welcome.jsp</to-view-id>
        </navigation-case>
        <navigation-case>
            <from-outcome>failure</from-outcome>
            <to-view-id>/pages/index.jsp</to-view-id>
        </navigation-case>
    </navigation-rule>
<h:selectOneListbox>、<h:selectOneMenu>
表格显示数据
<h:dataTable  border="1" id="hotels" value="#{ConditionalinfoAction.conditionlist}" var="conditlist">
                <h:column>
        <f:facet name="header">
            <h:outputText value="全选"/>
        </f:facet>           
       <h:selectBooleanCheckbox>
      
       </h:selectBooleanCheckbox>
    </h:column> 
<h:column>
        <f:facet name="header">
            <h:outputText value="编号"/>
        </f:facet>           
        <h:outputText value="#{conditlist.conId}"/>
    </h:column>
<h:column>
        <f:facet name="header">
            <h:outputText value="名称"/>
        </f:facet>           
        <h:outputText value="#{conditlist.conName}"/>
    </h:column>
</h:dataTable>
假如有什么讨论的的,可以加入962589149

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics