JSF Action 与ActionListener的区别

标签:

杂谈

 
 事件  检验  参数  事件产生  页面跳转
 Action  有 无参数,不传入当前控件,有返回值    当铵钮被单击时产生事件.提交表单   返回页面---根据配置文件跳转
 ActionListener   有  传入当前控件,无返回值   当铵钮被单击时产生事件.提交表单   返回本页面
 ValueChangeListener    有   传入当前控件,无返回值   不提交表单(需指定其onchange/onclick="submit"才自动提交表单  返回本页面

action()处理的是业务逻辑.实际上JSF会自动产生一个"预设的ActionListener"来处理事件,并根据其返回值决定页面跳转.

第五阶段:调用应用执行会影响到页面间的导航(navigation)。主要处理一些业务逻辑并返回几个业务逻辑结果(String类型),JSF的导航系统将会根据这个来选择恰当的下一个页面. 会提交表单.

actionListener(ActionEvent e)处理页面上组件的"监听事件".

第五阶段:调用应用执行不会影响到导航.主要操作当前页面内的组件,或者是进行一些业务模型上的改变,或者是修改backing bean(托管Bean)的属性等,并不会出现在页面间的跳转。会提交表单.

valueChangeListener(ValueChangeEvent event)处理页面上组件值变化的"监听事件","

第三阶段:验证请求值"执行

ActionListener (事件监听器)是用于解决只影响用户界面的事件

特别地,在beans的form数据被加载和触发验证前被调用

用immediate=“true”指明这个行为不触发验证

在监听器调用后,会重新显示表单

不应用导航规则,不重定向页面

Action

隶属于按钮、超链接和图形映射控件

自动提交对应表单

ValueChangeListener

隶属于单选框、组合框、列表框、复选框、文本框等控件

需要

JSF Action 与ActionListener的区别的更多相关文章

  1. JSF action actionListner 详解

    https://stackoverflow.com/questions/3909267/differences-between-action-and-actionlistener   actionLi ...

  2. Action和Fuc的区别

    Action和Fuc的区别,参数和具体用法

  3. dao层、service和action的运用和区别

    DAO层叫数据访问层,全称为data access object,属于一种比较底层,比较基础的操作,对于数据库的操作,具体到对于某个表的增删改查, 也就是说某个DAO一定是和数据库的某一张表一一对应的 ...

  4. vuex action 与mutations 的区别

    面试没说清楚.这个太丢人回来整理下: 事实上在 vuex 里面 actions 只是一个架构性的概念,并不是必须的,说到底只是一个函数,你在里面想干嘛都可以,只要最后触发 mutation 就行.异步 ...

  5. [Asp.Net] MVC 和Web API Action 获取参数的区别

    Asp.net MVC 和web api 的action 在获取从前台传入的数据是有很大不同 前台使用ajax的方式向后台发起post的请求 Content-Type:application/json ...

  6. Html.Partial 和 Html.RenderPartial 、Html.Action 和 Html.RenderAction区别

    Html.Partial 和 Html.RenderPartial不需要为视图指定路径和文件扩展名.因为运行时定位部分视图与定位正常视力使用的逻辑相同.RenderPartial不是返回字符串,而是直 ...

  7. Dynamics 365 CRM Action 和 workflow 的区别

    workflow 总是需要一个record作为起始点(create, update, delete or on-demand) 但是action 不需要. 例如我们需要action来创建一个发送ema ...

  8. *.do和*.action的区别

    最近发现个问题,都是SpringMVC 请求地址有的是*.do有的是*.action,想了半天区别没想出来. struts早期的1版本,以.do为后缀.同时spring的MVC也是以.do为后缀.几年 ...

  9. 【转】JSF中的三大核心组件 UI标签的详细介绍和使用举例

    JSF提供了大量的UI标签来简化创建视图.这些UI标签类似于ASP.NET中的服务器组件.使用这些标签,可以通过其value,binding,action,actionListener等属性直接绑定到 ...

随机推荐

  1. 股票k线

    与上一篇文章相比k线图主要的难点 1.tooltip的定制化显示: 当手指触摸手机屏幕上下拖动可能会手指的事件陷入图表无法进行上下拖动 tooltip:{followMouseMove} follow ...

  2. XtraReport 实例化 打印

    // Create a report instance, assigned to a Print Tool.     ReportPrintTool pt = new ReportPrintTool( ...

  3. 93、App Links (应用程序链接)实例

    •网页端statements.json文件配置说明     package_name :APP包的名. sha256.... :  APP的签名.   •应用Manifest文件声明说明 <ap ...

  4. TestNG运作报错An interanl error occurred during:"Launching first"

    备注:我建的类名就叫做“first” 解决办法:卸载掉TestNG M2E Help-->Install new software-->What is already installed? ...

  5. echart 图表 在.net中生成图片的方法

    经过中午近两个小时的努力,终于可以实现了:echart 图表 在.net中生成图片 以下源代码: 前台页面: <!DOCTYPE html><html><head> ...

  6. Hibernate三种状态的区分,以及save,update,saveOrUpdate,merge等的使用 引自http://www.blogjava.net/TiGERTiAN/archive/2008/10/25/236519.html

    Hibernate的对象有3种状态,分别为:瞬时态(Transient). 持久态(Persistent).脱管态(Detached).处于持久态的对象也称为PO(Persistence Object ...

  7. 项目已被os x使用 不能打开-黑苹果之路

    之前复制了几个视频文件到NTFS的盘上,在mac中始终无法使用(甚至是chmod),无论是哪种播放软件,甚至改成dmg类型都无法打开,报“项目已被os x使用 不能打开”,用ls命令发现文件属性中多了 ...

  8. [转]MFC中UpdateData()函数的使用

    当你使用了ClassWizard建立了控件和变量之间的联系后:当你修改了变量的值,而希望对话框控件更新显示,就应该在修改变量后调用 UpdateData(FALSE):如果你希望知道用户在对话框中到底 ...

  9. 关于 C/C++ 的文章

    关于 C/C++ 的文章,以前写的博客在百度,百度关了,只能一个一个复制了,百度太.....

  10. SQL必知必会笔记2

    15. 插入数据 1). 数据插入 INSERT 用来将行插入到数据库表中,插入的方式有几种: (1)插入完整的行: INSERT INTO Customers VALUES( '1000000006 ...