Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/rest/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Struts 2+;错误页面+;配置_Java_Struts2 - Fatal编程技术网

Java Struts 2+;错误页面+;配置

Java Struts 2+;错误页面+;配置,java,struts2,Java,Struts2,我正在尝试为struts 2项目配置全局错误页。到目前为止,我已经完成了以下工作: <global-results> <result name="Exception">/jsp/common/errorPage.jsp</result> </global-results> <global-exception-mappings> <exception-mapping exception="java.lang.Throwable

我正在尝试为struts 2项目配置全局错误页。到目前为止,我已经完成了以下工作:

<global-results>
  <result name="Exception">/jsp/common/errorPage.jsp</result>
</global-results>
<global-exception-mappings>
 <exception-mapping exception="java.lang.Throwable" result="Exception" />
</global-exception-mappings>

/jsp/common/errorPage.jsp
在my web.xml中:

<error-page>
  <exception-type>java.lang.Throwable</exception-type>
  <location>/jsp/common/errorPage.jsp</location>
</error-page>
<error-page>
 <error-code>404</error-code>
 <location>/jsp/common/errorPage.jsp</location>
</error-page>

java.lang.Throwable
/jsp/common/errorPage.jsp
404
/jsp/common/errorPage.jsp
Struts处理所有/*请求。当我故意尝试转到一个未映射的位置时,我得到了错误堆栈跟踪

没有为命名空间/和操作名称映射的操作 检查错误页[未知位置]

当我在映射操作中抛出错误时,我将再次获得堆栈跟踪,而不是错误页面。我正在重新引用web上其他解决方案中建议的错误,但它仍然没有重定向到错误页面

我做错了什么


谢谢

您的配置在测试项目中对我有效。请说明您使用的Struts2的版本。另外,如果
struts.devMode
设置为true,那么这将解释为什么您的自定义页面没有用于404响应。在dev模式打开的情况下,Struts 2将用一个内置的错误页面替换404响应,该页面试图为您提供调试的详细信息


请注意,自定义错误页仍应用于操作引发的异常。

您的配置在测试项目中对我有效。您使用的是什么版本的Struts2?struts.devMode设置为什么?您还可以提供其他详细信息吗?史蒂文是对的,可能只是关于
struts.devMode
的问题。您可以显示struts.xml或struts.properties文件吗?这是一个“duh”时刻。请将您的回答转换为答案,以便我可以投票并接受。@VarunAchar是与devMode相关的问题吗?最好解释一下为什么devMode很重要,否则这只是一个问题,对具有相同问题的未来访问者没有帮助:)同意。等我有时间的时候,我会详细讨论这个问题。