如何处理struts2中默认拦截器抛出的异常?

时间:2014-03-24 12:00:58

标签: java exception-handling struts2 interceptor

例如:

org.apache.commons.fileupload.FileUploadBase$SizeLimitExceededException: 
the request was rejected because its size (337867) exceeds the configured 
maximum (200)

1 个答案:

答案 0 :(得分:1)

您可以使用Struts2的异常映射功能将异常映射到特定的result

struts.xlm文件中将<exception-mapping>定义放在<global-exception-mappings>内并创建result,使用已定义的名称,全局或特定的操作。

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

请注意,拦截器堆栈必须包含exception拦截器。此外,建议exception拦截器是堆栈上的第一个拦截器,确保它具有捕获任何异常的完全访问权限,甚至是由其他拦截器引起的异常。