java - 当请求的页面或方法找不到时如何定义全局页面?

标签 java exception struts2 global struts-config

当遇到异常时,我知道如何在我们定义的包中完善全局错误重定向页面,只需在 struts.xml 的父包中添加以下配置即可:

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

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

但是它似乎无法捕获那些请求的资源、方法、页面未找到等异常,我的意思是如何捕获struts2级别的错误,然后我可以做一些处理它。

最佳答案

您应该在 struts.xml 中定义未知处理程序。当执行未知的操作、结果或方法时,框架会调用未知的处理程序。

<bean type="com.opensymphony.xwork2.UnknownHandler" name="handler" class="com.package.SomeUnknownHandler"/> 

该类应实现 UknownHandler 接口(interface)来处理情况:

  • 当操作配置未知时
  • 当找不到操作结果和结果代码时
  • 当找不到操作方法时

关于java - 当请求的页面或方法找不到时如何定义全局页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18503977/

相关文章:

debugging - Visual Studio 不会因用户未处理的异常而中断

struts2 - 全局拦截器 - 在每个 Action 之前运行

java - 如何在Struts2中实现基于角色的访问控制、身份验证和 session 管理?

java - 如何将请求参数映射到struts2中具有不同名称的bean

java - 如何清除 .pdf 工件中的文本?

java - 用户界面 Java : Button which clears the data of a JTable

java - 未找到 Mvn 命令?

java - 使用 Play 框架或插件进行实时页面更新

c# - 使用异步线程的退出代码退出应用程序

c++ - 处理程序捕获的对象是原始对象的拷贝?