Struts2声明式异常处理

在使用框架之前我们的程序中遇到异常,都是使用try{…}catch{…}手动捕获解决,或者使用throws Exception将异常抛给别人去解决。在struts2框架中,异常的解决方法,更方便了,只要在struts.xml配置文件中声明一下就可以了。今天我们就来学习一下struts2的声明式异常处理。

 

Struts2的异常处理,靠的是ExceptionMappingInterceptor异常拦截器。这个异常处理的拦截器是我们struts.xml配置文件中继承过的struts-default包中的一个默认拦截器,所以不用我们做额外的拦截器配置。



下面就用一个实例来感性的了解一下,声明式异常处理的使用:


一、新建一个web project项目



二、导入jar包,Build Path添加到项目中




局部异常处理

三、web.xml中配置文件



四、新建一个action类,名称为:HelloWorldAction



五、新建三个页面

1、新建一个index.jsp页面,作为项目启动默认加载的页面



2、新建一个helloWorld.jsp页面,作为成功跳转的页面



3、新建一个struts.xml配置文件



六、导出war包

现在点击项目右键 ---> export ---> war file ---> 点击Browser选择war包导出路径 ---> finish





七、将导出的war包放到tomcat服务器的webapps文件夹下面



Ctrl+R打开运行框,输入cmd,回车打开dos窗口,



八、启动tomcat

使用dos命令,进入tomcat的bin文件夹下,执行startup.bat命令,启动服务器



Tomcat会启动一个新的dos窗口,打印启动日志,看到下面的信息即表示tomcat启动成功。



此时war包已经自动解压


九、打开浏览器输入访问网址:http://localhost:8080/Struts2_exception01/


输入名字,点击提交按钮,网页直接报错了



十、struts.xml中配置异常处理

修改struts.xml的配置文件,增加红框框中的两个配置



使用和上面同样的方法导出war包,放到tomcat的webapps文件夹下(放之前先将上次放入的同名的那个war包和解压后的文件夹删除),重新启动tomcat,

通过浏览器访问项目url:http://localhost:8080/Struts2_exception01/  ,点击提交按钮,后页面跳转到了错误页面error.jsp,


全局异常处理


刚刚这个是我们针对某个action的特定异常做了处理,接下来,我们配置一个能捕获所有的action中的NullPointerExcetion异常的处理,标签是:<global-exception-mappings>,如图:



重新导出war包,替换tomcat中webapps中的war包,重新启动tomcat,重新访问项目url,点击提交,页面如下,

(补充:我在error.jsp页面中,新加了“捕获所有action异常页面”几个字)
































  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值