`
aiyan2001
  • 浏览: 73431 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

STRUTS2的源码分析

阅读更多

今天,好不容易把struts2的一个源码片段弄清楚了点,现在说说,让别人的类似疑惑暂定。

ok,我在2.2.1的版本看到

 

 

           // if the ActionMapping says to go straight to a result, do it!
            if (mapping.getResult() != null) {
                Result result = mapping.getResult();
                result.execute(proxy.getInvocation());
            } else {
                proxy.execute();
           
            }

 

在大部分想都是走ELSE路线,但是mapping.getResult() != null 是什么时候才能出现呢?在网上GOOGLE

 

" if the ActionMapping says to go straight to a result, do it!" 最后通常是找不到问题的原因的。

 

今天我发现问题的答案在 DefaultActionMapper 这个类的注释里面。

 

也就是当BUTTON的请求是

    <s:submit name="redirect:http://www.google.com.hk" value="Cancel"/>
   
    <s:submit name="redirectAction:list" value="Cancel122"/>

这样以

 

    protected static final String REDIRECT_PREFIX = "redirect:";

    protected static final String REDIRECT_ACTION_PREFIX = "redirectAction:";

 

redirect: 或者redirectAction:开头的button是走mapping.getResult() != null 路线的。

 

 如果有其他情况,请看客们说说,谢谢!

 


 

分享到:
评论
1 楼 chenchuan 2011-10-09  
刚刚好 我也正为这个事情疑惑了 ,做了多次试验都没有看到走那条线

相关推荐

    struts2 源码分析

    Struts2 源码分析 Struts2 是一个基于MVC 模式的Web 应用程序框架,它的源码分析可以帮助我们更好地理解框架的内部机制和工作流程。下面是Struts2 源码分析的相关知识点: 1. Struts2 架构图 Struts2 的架构图...

    struts2源码分析

    struts2源码详细解析51CTO下载-struts2源代码分析(个人觉得非常经典)

    Struts2源码分析

    ### Struts2源码分析 #### 一、概述 Struts2是一个基于MVC模式的开源Web应用框架,它能够帮助开发者快速构建出结构清晰、易于维护的企业级应用。Struts2的核心组件包括:`ActionContextCleanUp`、`...

    struts2源码分析总结

    本文将深入探讨Struts2的源码分析,特别是关于StrutsPrepareAndExecuteFilter的初始化过程,这是Struts2的核心组件之一,负责处理HTTP请求。 首先,我们来看`StrutsPrepareAndExecuteFilter`的初始化。这个过滤器...

    Struts2源码分析--请求处理.pdf

    Struts2源码分析--请求处理.pdf

    Struts2源码分析--请求处理[汇编].pdf

    Struts2源码分析--请求处理[汇编].pdf

    struts2部分源码分析

    本篇文章将深入探讨Struts2的运行原理,通过源码分析来揭示其内部工作机制。 首先,我们从核心组件开始。Struts2的核心组件包括Action、FilterDispatcher、Interceptor和Result。Action是业务逻辑的载体,它接收...

    Struts2源码阅读

    通过阅读Struts2的源码,我们可以深入了解框架如何处理请求、如何调度Action以及如何应用拦截器来扩展功能。这有助于开发者更好地定制和优化他们的应用程序,提高代码质量和性能。在实际开发中,对源码的理解能帮助...

    struts2源代码分析

    Struts2是一个流行的Java web应用程序框架,它基于MVC(模型-视图-控制器)设计模式,用于构建高效且可维护的web应用。Struts2是Struts1.x和WebWork社区合并的产物,可以看作是WebWork的增强版,具备稳定性、高性能...

    struts2 源码解读

    源码分析是提升编程技能和解决问题的关键,特别是对于复杂的框架如Struts2,理解其内部工作原理能够帮助我们优化应用性能,修复潜在问题,并进行定制化开发。 首先,Struts2的核心组件包括Action、Result、...

    struts2-src

    Struts2源码分析可以从以下几个关键点展开: 1. **Action与Dispatcher**:在Struts2中,Action类是业务逻辑处理的主要载体。用户请求首先会被Struts2的前端控制器(DispatcherServlet)捕获,然后根据配置文件...

    struts2源码研究

    Struts2 源码分析主要涉及其在Tomcat启动过程中的初始化步骤以及请求处理流程。首先,我们来看Tomcat启动时Struts2框架如何准备和执行。 在Tomcat启动时,Struts2的Filter文件被加载,具体是`...

    Struts2视频教程

    #### 六、Struts2源码分析 - **深入源码**:针对某些重要知识点,比如Action的执行流程、拦截器的工作原理等,本教程还会带领学员一起探索源码,加深对框架内部机制的理解。 ### 结语 通过以上对Struts2各个方面...

    struts 2 源码 导入eclipse工程

    通过上述步骤和知识点,你可以对Struts 2有更深入的理解,并且能够利用Eclipse的强大工具进行调试和代码分析,提升开发效率。同时,熟悉源码也有助于定制化开发和解决实际问题。在实践中不断探索和学习,才能更好地...

    struts2框架源码

    了解这些基本概念后,深入源码分析可以发现以下关键技术点: 1. **Dispatcher Servlet**:Struts2的核心控制器,负责接收HTTP请求,通过ActionMapper找到对应的Action,然后调用ActionInvocation进行拦截器链的执行...

    struts2 项目源码

    通过分析这个Struts2项目源码,你可以学习以下技能: 1. 如何创建Action类,并定义其方法与用户请求对应。 2. 理解配置文件`struts.xml`的结构和作用。 3. 掌握Action与视图的交互,了解结果类型的应用。 4. 学习...

Global site tag (gtag.js) - Google Analytics