struts2完全捕获404错误的方法
来源:互联网 发布:知乎三大程序员 编辑:程序博客网 时间:2024/05/16 07:43
目前在做一个网络应用程序,struts2 + spring + hibernate,服务器是tomcat。希望用户在IE地址栏乱敲的时候,所敲入的所有未定义的URL都能被程序捕捉到,然后转到一个自制的404错误处理页面。
首先查阅网上的资料,得知可以在web.xml中加入这么一段:
<error-page> <error-code>404</error-code> <location>/error/404.jsp</location></error-page>
这样,所以未找到的404错误都会转到/error/404.jsp接受处理。
但是经过试验,我发现以.action结尾的URL会先被struts2框架所捕获,而不会直接转入web.xml中配置的处理页面。这样,如果在struts.xml没有配置相应的action,则会在tomcat里输出错误:
严重: Could not find action or result
There is no Action mapped for namespace / and action name ******. - [unknown location]
虽然最后也能转入web.xml中配置的处理页面,但是这样在命令台瞎输出一些东西,非常不便于程序的管理和调试,所以还得想办法让struts2框架处理未定义的action。
查阅网上资料,发现可以在struts.xml中,添加一个默认的package,然后在这个默认的package中,添加一个默认的action,让这个action转向404错误处理页面:
<package name="default" extends="struts-default"> <default-action-ref name="notFound" /> <action name="notFound"> <result>/error/404.jsp</result> </action></package>
默认的package的特点就在于不定义namespace属性,这样所有未定义的namespace都会转向这里。name="default"是为了便于阅读,其实name是什么都可以,也可以为空:name=""。
然后还要在其它已定义的package中也添加默认的action,转向404错误处理页面。这样就可以完全处理所有的404错误了。
- struts2完全捕获404错误的方法
- struts2完全捕获404错误的方法
- struts2完全捕获404错误的方法
- struts2 捕获404错误的常用方法
- struts2 捕获404错误
- js捕获错误的两种方法
- PHP捕获Fatal error错误的方法
- 捕获页面的404,500等错误
- struts2.x获取不存在的action404错误与捕获页面500错误
- 全局的异常捕获Struts2
- Struts2的404/500完全捕捉
- 捕获BDC报的错误
- 捕获未处理的Promise错误
- 访问Struts2的方法页面报404错误,后端没有错误显示
- struts2 helloworld 的404错误
- SpringMVC 方法断点有进入捕获却报404错误 直接访问也是报404错误
- Ios UIWebView 捕获404错误
- 真正完全解决MyEclipse update progress错误的方法
- Swift 学习之Using Swift mix and match, network: 写rss阅读器
- mac_appium环境搭建
- OCP 1Z0 052 37
- UML复习备忘录
- ORA-4065错误处理过程
- struts2完全捕获404错误的方法
- leetcode之3Sum
- C# web点击按钮直接打开word
- 201402 系统更新后 VS2010 的宏功能不能正常使用(如添加头注释)
- unity3d教程动态创建简单平面地形
- swift特性一
- JPEG库在Linux系统下的编译和移植
- NOJ1047图的深度优先遍历序列
- C++中的4个与类型转换相关的关键字