1.actionInvocation是什么
ActionInvocation就是Action的调用者。ActionInvocation在Action的执行过程中,负责Interceptor、Action和Result等一系列元素的调度。
理解ActionInvocation你需要对Action的调用过程有一个全面的了解:
http://tech.ddvip.com/2009-01/1232090919106049.html
讲的还是很清楚地!
2.ActionInvocation干什么
Interceptor通过ActionInvocation可以完全的改变Action行为:不让它执行、改变返回值、甚至可以细颗粒的操作Action的方法
查看ActionINvocation 的API,他有getActionProxy(),getResultCode();getActionContext();
ActionProxy在action中用来构建执行环境,ActionProxy提供Action执行的时候一切所需要的配置、参数等等,当然,也要有进行Action调用的入口。
分享到:
相关推荐
`ActionInvocation`在Struts2框架中扮演着调度者的角色,负责整个Action执行过程的调度。它不仅负责调用Action的`execute`方法,还负责拦截器链的执行顺序,以及最终结果的处理。`ActionInvocation`通过调用拦截器链...
FilterDispatcher是Struts 2框架的基础,它充当了整个流程的中心调度者。当一个HTTP请求到达服务器时,FilterDispatcher首先捕获这个请求。FilterDispatcher包含了一套内部的控制流程和处理机制,负责将请求转发到...
Action扮演了命令角色,而ActionInvocation(或ActionSupport)可以视为请求者角色,它调用`execute()`方法执行请求。ActionForm可以看作是传递参数的对象,而ActionMapping则提供了关于请求映射的信息。接收者通常...
Xwork通过`DefaultActionProxy`和`ActionInvocation`类实现了动作的调度。`DefaultActionProxy`是Action的代理,负责创建并初始化`ActionInvocation`实例。`ActionInvocation`则代表了Action执行的流程,它维护了...
3. **FilterDispatcher**:当请求到达FilterDispatcher时,它是Struts2的入口点,它负责调度请求的处理。 4. **ActionMapper**:FilterDispatcher会咨询ActionMapper来决定这个请求是否需要调用特定的Action。...
xwork2的核心功能在于动作调度和类型转换。在源代码中,`com.opensymphony.xwork2`包是xwork2的核心包,包含了ActionContext、ActionProxy、ActionInvocation等关键类。ActionContext管理了请求上下文中的所有信息,...
### Struts2入门知识点详解 ...以上内容涵盖了Struts2框架的基础知识和核心概念,对于初学者来说是非常宝贵的入门指南。通过深入理解和掌握这些知识点,开发者可以更加高效地利用Struts2进行企业级应用的开发。
通过研究Struts2的源码,我们可以了解到其内部工作原理,例如ActionInvocation是如何调度动作执行的,Result是如何渲染视图的,以及ValueStack如何处理OGNL表达式。这对于优化性能、解决实际问题或者定制框架功能...
- **Struts2架构**:由Filter Dispatcher(过滤器调度器)作为核心,接收HTTP请求,然后通过ActionMapper和ActionInvocation来调用相应的Action。 - **基本处理流程**:请求到达Filter Dispatcher -> 拦截器链 -> ...
1. **动作调度(Action Dispatching)**: XWork通过ActionProxy和ActionInvocation实现动作调度,它们负责根据请求参数找到对应的动作并执行。 2. **类型转换(Type Conversion)**: XWork引入了ConversionService...
5. **Interceptor链处理**:`ActionProxy`创建`ActionInvocation`实例,后者负责`Action`的执行以及相关`Interceptor`链的调用。在`Action`执行前后,根据配置,相关的拦截器会被依次调用,实现了对请求的预处理和后...
4. **观察者模式(Observer)**:Struts2中的事件驱动模型就借鉴了观察者模式,Action与Result之间的关系就是一种典型的观察者关系。当Action执行完成后,会触发相应的Result,这种模式提高了代码的可扩展性和维护性...
通过分析源码,开发者不仅可以了解Struts 2的工作流程,还可以学习到设计模式的应用,如工厂模式、责任链模式、观察者模式等。同时,这对于自定义拦截器、扩展功能或者解决实际开发中遇到的问题都非常有帮助。因此,...
xwork是Struts2框架的核心组件之一,它提供了动作调度、类型转换、数据校验等关键功能。xwork2.0.4源代码的获取通常有两种方式,一是通过myeclipse的svn工具,二是直接从xwork的官方网站下载包含源代码的all版本。这...
在Struts2框架中,XWork是其核心组件,负责处理动作调度、类型转换、验证等关键任务。深入理解XWork的源代码对于提升Struts2的开发技能至关重要。 首先,让我们来看看`xwork-2.1.1-sources`这个文件,它是XWork库的...
- **结果返回**:Action执行完毕后,ActionInvocation根据配置文件找到相应的返回结果,如另一个Action链、JSP页面或FreeMarker模板。 #### 六、总结 当当网项目的构建基于Java SSH框架,重点介绍了Struts框架的...
- **Struts2**:请求首先被FilterDispatcher拦截,然后通过ActionMapper找到对应的Action,再由ActionProxy创建ActionInvocation,调用Action方法,最后根据Action的结果跳转到指定的视图。 #### 关键差异点 - **...
- **ActionInvocation**:代表一个拦截器调用栈中的当前 Action,提供对当前 Action 的调用和跳过能力。 - **InterceptorStack**:管理拦截器的调用顺序和执行逻辑。 #### 六、ActiveRecord 模型 - **概述**:...