Struts2 异常处理 ( jsp记录异常信息到日志 )

struts中的action有的时候不用try catch捕获异常,而将错误直接抛到jsp页面,

这样致使jsp直接把一大堆错误信息输出到页面或弹出异常信息,以下为解决方法:

 

测试的Actioin

 

public String execute() throws Exception {
        if(true)
             throw new Exception("出错咯.......");
        return super.execute();
}

 

struts.xml配置

<global-results>
	<result name="exception">/jsp/exception.jsp</result>
</global-results>

<global-exception-mappings>
	<exception-mapping result="exception" exception="java.lang.Exception"></exception-mapping>
</global-exception-mappings>

 jsp页面

<%@ page language="java" contentType="text/html; charset=GBK"%>  
<%@ page import="org.apache.log4j.Logger" %>
<%@page import="java.text.SimpleDateFormat"%> 
<%@taglib prefix="s" uri="/struts-tags"%>   
<html>   
    <head>   
        <title>异常处理页面</title>   
    </head>   
    <body>   
        <!--
        	<s:property value="exceptionStack"/>  
        	<s:property value="exception.message"/>   
        --> 
        	系统异常,请稍候再试...
        	<%
        	  final  Logger logger = Logger.getLogger(getClass());
        	logger.error("系统异常>>>"+new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new java.util.Date())+">>>"+request.getAttribute("exception.message"));
        	%>
    </body>   
</html>

 

这样页面看到的是:系统异常,请稍候再试

后台记录日志 ERROR exception_jsp : 系统异常>>>2010-04-22 18:58:20>>>出错咯......

Struts2自定义拦截器实战教程 本文还有配套的精品资源,点击获取 简介:Struts2框架是Java Web应用程序的强大工具,其中拦截器是其核心特性之一。通过本教程,你将学习如何创建和配置自定义拦截器,实现对请求的处理逻辑,如日志记录和权限检查。我们将通过定义Java类并实现Interceptor接口或AbstractInterceptor抽象类来创建拦截器,并在Struts2的配置文件中进行声明和配置... 阅读详情

相关推荐

Struts2框架原理及官方示例深度解析

本文还有配套的精品资源,点击获取 简介:Struts2是一个功能强大的Java Web应用程序框架,它遵循MVC架构设计,提供了丰富的特性,包括动作调度、国际化、异常处理和插件扩展。本文将通过官方实例深入分析Struts2的核心概念和配置细节,包括 struts.xml 配置文件、Action类、JSP页面、结果类型和拦截器等组件的实现。掌握这些知识对于开发高...

weixin_28793831的博客 1941

jsp标准页面 logback日志配置

jsp标准页面 <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ page isELIgnored ="false"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <!DOCTYPE html> <html lang="en"> <head> <

weixin_48243118的博客 837

深入解析Java Web Struts2开发实践

在现代Web开发领域,Java Web框架层出不穷,Struts2作为一个成熟的Web应用框架,已被广泛应用于企业级应用开发中。本章将对Struts2框架的基本概念进行概述,以及它如何在Java Web开发中占据一席之地进行介绍。Struts2框架是Apache Struts的第二个主要版本,它是一个基于MVC(Model-View-Controller)设计模式的Web应用框架。

weixin_42612804的博客 275

Struts2总结--全局异常处理

在Struts2中配置了全局异常后,出现异常后可以直接往外抛,则异常会直接交给Struts2去处理,Struts2配置全局异常需要配置&lt;global-exception-mappings&gt;或者&lt;exception-mapping&gt;来进行异常个管理。(&lt;exception-mapping&gt;是配置在Action中) 用于异常处理的&lt;exception-map...

qq_25011427的博客 969

基于Python API的ECMWF大气数据批量下载与自动化处理实践

本文详细介绍了如何利用Python API实现ECMWF大气数据的自动化批量下载与处理。针对遥感分析中手动下载ERA5等数据的痛点,文章提供了从API密钥配置、核心脚本编写到元数据解析、任务队列调度及数据质量检查的全流程实践指南,旨在帮助科研与工程人员高效获取并处理大规模气象数据。

u8v9w0x1y的博客 479

VS2019 +osg3.6.5+ earth3.2+qt5.14.2+osgQt 编译教程

用vs新建工程,稍后会在写一篇博客上分享四、结语至此,所有的编译就均已完成。

king_ink的博客 1134

Struts2中的异常处理

因为在Action的execute方法声明时就抛出了Exception异常,所以我们无需再execute方法中捕捉异常,仅需在struts.xml 中配置异常处理。 为了使用Struts2的异常处理机制,必须打开Struts2的异常映射功能,这需要exception拦截器。在struts-default.xml文件中已经开启了exception拦截器。 声明式异常捕捉 Struts2的异...

数据库天地 296

ADSP-21565的SigmaStudio图形化编程实战:从FW工程改造到音频通道打通

本文详细介绍了如何将ADSP-21569的SigmaStudio图形化编程固件工程改造,以适配ADSP-21565的纯片内SRAM内存架构。通过修改内存映射和链接文件,打通了音频输出通道,并成功利用SigmaStudio进行图形化编程,实现了从白噪声生成到音频输出的完整验证流程。

weixin_29169505的博客 381

struts2中action抛出自定义异常信息,将信息显示到jsp页面

[size=large] 通常情况下,我们会遇到这种情况,action中处理请求时,请求不满足要求,这时需要提示用户操作不合理或者有错误。例如,用户登录系统,密码输入错误,那我们需要提醒用户密码错误,将提示信息显示到页面。简单的可以在action设置errorMsg属性实现get/set方法直接在页面显示就可以了。 另外,我们还可以通过定义拦截器的方式实现。首先定义一个异常类...

zuishengmengsi1990的专栏 661

紫光同创国产FPGA学习之Fabric Debugger

文章从紫光同创参考书拷贝过来的。因为我用的时候,看了一下就会用了(纯粹只是会用了,默认和xilinx的一样),没有看教程。先更新点文本,后面在写程序。 一、      软件简介 Fabric Debugger是一款界面化的FPGA芯片调试工具,能够针对公司目前以及未来的FPGA芯片进行在线调试。本软件直接与JtagHub、DebugCore交互,能够实时的配置目标FPGA、设置触发条件并且观测结...

my_share的专栏 6397

五十天精通硬件设计第6天-放大器知识及选型

运算放大器(Operational Amplifier,简称运放)是一种高增益的直流耦合差分放大器,广泛应用于信号处理、滤波、比较、积分、微分等电路中。

whm128的博客 596

log4j 抛出异常信息_struts2全局异常处理及配合log4j异常日志记录

在编写代码时除了使用try catch来捕获异常之外,还可以用struts2的声明式异常处理,即在Action中直接抛出异常交给struts2来处理,并且在xml文件中进行相应的配置,如下:/exception/error.jsp以上是全局异常的处理,也可以处理特定Action的异常,如下:trueerror/webPage/exception/login_error.jsp特定Action的异常...

weixin_29170327的博客 261

INFFUS 2025 | DDBFusion:基于双重分解和贝塞尔曲线的统一图像分解与融合框架

现有的图像融合算法大多集中于网络架构和损失函数的设计,采用统一的特征提取策略,却忽略了冗余信息和有效信息的划分。然而,对于互补信息而言,统一的特征提取器可能并不适用。因此,本文提出了一种基于贝塞尔曲线图像增强和分层分解的统一图像融合算法,并构建了一个自监督学习任务来学习有意义的信息。其中,贝塞尔曲线旨在模拟不同的图像特征,并构建特殊的自监督学习样本,因此作者的方法不需要特定任务的数据,并且可以在公共自然图像数据集上轻松进行训练。同时,作者的双重分解自监督训练方法可以为模型赋予冗余信息过滤能力。

小白学视觉 308

Struts2教程八——Exception Handling

<!-- .dp-highlighter {width:95%!important} --> <!-- .footer {padding-top:4px; color:#666} --> 本教程代码可在Google Code - http://code.google.com/p/struts2-examples/dow

RO_wsy的专栏 3206

vue2 - 实现移动端H5网页调用手机相册选取图片或打开摄像头相机拍照上传,如何在h5网站浏览器中打开本机相册或相机选择相片,H5调用本地相册/相机上传图片详细教程(附图片压缩功能及上传服务器示例)

vue2手机H5网页,调起安卓苹果ios手机相册和相机,H5实现调用手机摄像头相册实现图片压缩预览删除,vue项目调用摄像头和相册,H5调用手机摄像头,实时拍照上传,VUE2 H5页面如何唤起手机摄像头拍照上传,H5调起手机端的摄像头,html5调用手机摄像头,实现H5调起手机相机和相册,vue H5拍照上传,手机网站浏览器移动端调取相机或相册,实现拍照上传功能,解决苹果ios手机无法打开相册相机问题,无法唤起摄像头怎么办,调取本机系统的相册,vue h5网页调用相机拍照和相册,实现多张图片上传功能,图片压

✅ 精选推荐文章 1万+

AIGC游戏测试自动化:AI如何提升游戏QA效率

随着游戏产业的蓬勃发展,游戏的复杂度和规模不断增加,传统的游戏测试方式面临着巨大的挑战。本文章的目的在于深入探讨AIGC技术在游戏测试自动化中的应用,分析AI如何提升游戏QA的效率。范围涵盖了从核心概念到实际应用的各个方面,包括算法原理、数学模型、项目实战案例以及未来发展趋势等。本文将按照以下结构进行阐述:首先介绍核心概念与联系,明确AIGC和游戏测试自动化的相关概念和关系;接着讲解核心算法原理和具体操作步骤,通过Python代码进行详细说明;然后介绍数学模型和公式,并举例说明;

AI 原生应用开发的博客 1357

Struts2 异常处理

Struts提供了一个更简单的方式来处理未捕获的异常,并将用户重定向到一个专门的错误页面。您可以轻松地Struts配置到不同的异常有不同的错误页面。 Struts的异常处理所使用的“exception”拦截容易。“exception”拦截器作为默认的栈的一部分,所以不必做任何额外的配置。它可为准备使用的盒。让我们看到了一个简单的Hello World示例进行一些修改在HelloW...

dengjuanshou7445的博客 157

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

转载/Struts2拦截器实现异常处理机制

创建ErrorInterceptor.java import javax.servlet.http.HttpServletRequest; import org.apache.log4j.Logger; import org.apache.struts2.StrutsStatics; import com.opensymphony.xwork2.ActionInvocation; imp

isiah_zhou的专栏 2048

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Struts2框架简单入门

Struts2入门

qq_42640067的博客 7744

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Struts2 S2-046漏洞深度解析:从异常处理到OGNL注入的攻防实战

在Web应用安全领域,输入验证与异常处理机制是防御体系的关键环节。其核心原理在于对用户提交的所有数据(包括HTTP请求头、参数等)进行严格的合法性校验,防止恶意输入破坏程序逻辑。这项技术的核心价值在于构建纵深防御,确保即使在非正常业务流程(如出错处理)中,应用也能保持安全状态。典型的应用场景包括文件上传、表单提交等用户交互频繁的功能模块。本文聚焦于一个经典案例——Struts2框架的S2-046漏洞,该漏洞正是由于在**异常处理**流程中对用户输入的**Content-Disposition**头部校验不足

weixin_30279315的博客 320

Struts2异常处理机制笔记

一、通常一个页面请求到后台以后,首先到action(也就是所谓MVC的controller),在action层会调用业务逻辑service层,service层会调用持久层dao获取数据,最后执行结果汇总到action,然后通过action控制转发到指定页面,原理图如下: 二、 1.Spring把大多数非运行时异常都转换成运行时异常(RuntimeException)最后导致程序员不知道在什么地方

fpwang87的专栏 376

Struts2学习(九)-----------声明异常处理

在Struts2中支持声明式异常处理 抛出 一般我们处理异常是在后台抛出或者捕获 如在上一个BBS中,我们的service包的中CategoryService在处理实现数据库的操作时有很多异常,如在增加方法中用try-catch方法进行捕获,那出现异常就会在日志里,在控制台,而反应不到我们前台输出 //增加 public void add(Category c){ Con...

wangdongli_1993的博客 478

web开发中异常信息的处理

在web开发中异常信息的处理是相当重要的。。   有几个情况下使用异常:   单纯的使用JSP: JSP 500页面的异常信息打印 使用struts情况:   struts中异常信息页面显示 struts2结合log4j打印异常信息  ...

学得越多,忘得越多;忘得越多,知道的越少 198

Struts2拦截器

一、内容提要 1.拦截器的概念及应用 2.STRUTS2自带的拦截器 3.自定义拦截器 4.自定义拦截器的应用 二、拦截器的概念及应用 拦截器(Interceptor)是Struts2的一个重要特性。Struts2框架的大多数核心功能都是通过拦截器来实现的,像避免表单重复提交、类型转换、对象组装、验证、文件上传等,都是在拦截器的帮助下实现的。拦截器之所以称为“拦截器”,...

dianruanbin6930的博客 161
上一篇: struts internet Explorer 无法下载
下一篇: Ext 必填项 *
fireinjava
博客等级 码龄20年 5粉丝 53原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值