`

Struts2.1XX 后台不打印异常问题

阅读更多

   在开发的时候发现Struts2.16 在action内抛出异常的时候,控制台是没有打印信息的,不过在Struts2.0的版本却可以,还不知道为什么要去掉(暂时不去研究),但这样很不方面,特别是写AJax 调用的时候。。于是对源码分析了一下后,发现了问题的所在是ExceptionMappingInterceptor 的默认参数的logEnabled 是false的,而抛出错误的时候根据这个判断决定是否打印。。

 

 protected boolean logEnabled = false;

 public String intercept(ActionInvocation invocation) throws Exception {
        String result;

        try {
            result = invocation.invoke();
        } catch (Exception e) {
            if (isLogEnabled()) {
                handleLogging(e);
            }
            List<ExceptionMappingConfig> exceptionMappings = invocation.getProxy().getConfig().getExceptionMappings();
            String mappedResult = this.findResultFromExceptions(exceptionMappings, e);
            if (mappedResult != null) {
                result = mappedResult;
                publishException(invocation, new ExceptionHolder(e));
            } else {
                throw e;
            }
        }

        return result;
    }

 

 

了解了问题所在后,就知道怎么解决这个问题了。我的临时解决方案是在struts2的配置文件上加上下面:

<interceptors>
			<interceptor-stack name="default">
				<interceptor-ref name="exception">
					<param name="logEnabled">true</param>
					<param name="logLevel">
						warn</param>
				</interceptor-ref>
				<interceptor-ref name="defaultStack"></interceptor-ref>
			</interceptor-stack>
		</interceptors>
		<default-interceptor-ref name="default"></default-interceptor-ref>
 
分享到:
评论

相关推荐

    Struts2.1权威指南——基于WebWork核心的MVC开发.zip

    《Struts 2.1权威指南》特点为:1.经验丰富,针对性强 《Struts 2.1权威指南》凝聚了作者大量的实际开发经验和感悟。作者依照读者的学习规律,首先介绍基本概念和基本操作,然后对内容进行深入讲解。 2.讲解具体,...

    struts2.1完整jar包

    9. **安全考虑**:Struts2.1版本虽然古老,但安全问题不容忽视。例如,著名的Struts2远程代码执行漏洞(CVE-2017-5638)曾导致大量系统受到攻击,因此及时更新和加固Struts2的安全配置至关重要。 10. **版本升级**...

    struts2.1教程

    ### Struts 2.1 教程知识点解析 #### 一、Struts 2.1 概述 - **框架定义**:Struts 2.1 是一款基于Java的开源Web应用开发框架,继承了Struts 1.x的优秀特性,并在很多方面进行了改进和优化。它提供了一种构建可扩展...

    Struts2.1 源码+开发包(项目依赖库)

    Struts2.1是Apache软件基金会的开源框架,主要用于构建基于Java EE的Web应用程序。它在Struts1的基础上进行了重大改进,提供了更强大的MVC(Model-View-Controller)架构支持,增强了动作处理、异常处理、国际化、...

    Struts 2.1 Libraries

    Struts 2.1 是一个基于MVC(Model-View-Controller)设计模式的Java Web应用程序框架,由Apache软件基金会维护。它旨在提供一个结构化的、可扩展的平台,帮助开发者构建可维护性高、易于扩展的企业级Web应用。在这个...

    Struts2.1权威指南2

    Struts2.1权威指南 李刚的著作 共四个部分 用7-zip解压

    struts2.1 jar包

    struts2.1在tomcat下载的包总是报错,根据tomcat官方解释修改后无任何错误,并且已经运行

    struts2.0升级到struts2.1的工具

    struts2.0升级到struts2.1的工具,自动修改配置文件和页面

    Struts2.1的jar包

    Struts2.1是Apache软件基金会旗下的Web应用框架Struts的特定版本,它基于Model-View-Controller(MVC)设计模式,旨在提供一个结构化的、可扩展的平台,用于开发Java Web应用程序。Struts2作为Java EE领域的重要组件...

    Myeclipse8.5下搭建SSH框架(图解)Struts2.1+Spring3.0+Hibernate3.3

    本文将详细介绍如何在MyEclipse 8.5环境下搭建基于Struts2.1、Spring3.0以及Hibernate3.3的SSH框架,并通过图解的方式引导读者完成整个搭建过程。 #### 二、创建 Web 项目 首先,需要在MyEclipse 8.5中创建一个新...

    Struts 2.1权威指南:基于WebWork核心的MVC开发

    李刚的Struts 2.1权威指南:基于WebWork核心的MVC开发,写的很详细。一共有九个压缩文件。

    struts 2.1 jar

    Struts 2.1 是一个基于MVC(Model-View-Controller)设计模式的Java Web应用程序框架,由Apache软件基金会维护。它旨在提供一个结构化的、可扩展的平台,帮助开发者构建更高效、易于维护的Web应用。Struts 2.1版本是...

    黑马程序员 struts2.1 视频教程

    Struts2.1 是一个基于模型-视图-控制器(MVC)架构的Java Web框架,由Apache软件基金会维护。这个视频教程由黑马程序员提供,由黎活明主讲,旨在帮助开发者深入理解和掌握Struts2.1的核心概念和实际应用。 首先,从...

    Struts2.1.zip

    7. **异常处理(Exception Handling)**:Struts2.1提供了一套完整的异常处理机制,允许开发者定义全局或特定Action的异常处理策略。 8. **Tiles集成**:Tiles是一个用于构建Web页面布局的框架,Struts2.1可以方便地...

    Struts 2.1 权威指南 part13 pdf

    Struts 2.1抛弃了Codebehind插件提供的“零配置”支持,改为使用Convention插件提供“零配置”,Struts 2.1新增了Portlet支持……为了让众多Struts学习者、工作者快速从Struts 2.0的开发升级到Struts 2.1,笔者升级...

    Struts 2.1 权威指南 part04 pdf

    Struts 2.1抛弃了Codebehind插件提供的“零配置”支持,改为使用Convention插件提供“零配置”,Struts 2.1新增了Portlet支持……为了让众多Struts学习者、工作者快速从Struts 2.0的开发升级到Struts 2.1,笔者升级...

    Struts 2.1 权威指南 part01 pdf

    Struts 2.1抛弃了Codebehind插件提供的“零配置”支持,改为使用Convention插件提供“零配置”,Struts 2.1新增了Portlet支持……为了让众多Struts学习者、工作者快速从Struts 2.0的开发升级到Struts 2.1,笔者升级...

    Struts 2.1 权威指南 part02 pdf

    Struts 2.1抛弃了Codebehind插件提供的“零配置”支持,改为使用Convention插件提供“零配置”,Struts 2.1新增了Portlet支持……为了让众多Struts学习者、工作者快速从Struts 2.0的开发升级到Struts 2.1,笔者升级...

    Struts 2.1 权威指南 part06 pdf

    Struts 2.1抛弃了Codebehind插件提供的“零配置”支持,改为使用Convention插件提供“零配置”,Struts 2.1新增了Portlet支持……为了让众多Struts学习者、工作者快速从Struts 2.0的开发升级到Struts 2.1,笔者升级...

    Struts 2.1 权威指南 part03 pdf

    Struts 2.1抛弃了Codebehind插件提供的“零配置”支持,改为使用Convention插件提供“零配置”,Struts 2.1新增了Portlet支持……为了让众多Struts学习者、工作者快速从Struts 2.0的开发升级到Struts 2.1,笔者升级...

Global site tag (gtag.js) - Google Analytics