Spring异常处理,不同URL的不同视图

时间:2013-02-15 13:01:07

标签: java spring spring-mvc exception-handling

我有一个异常解析器,可以捕获异常并相应地返回视图。

<bean class="com.mycomp.project.util.MyExceptionResolver">
<property name="exceptionMappings">
    <props>
        <prop key="com.mycomp.project.domain.exception.PermissionException">permissionException</prop>
        <prop key="com.mycomp.project.controller.payment.PaymentException">paymentException</prop>
        <prop key="com.mycomp.project.domain.exception.CSRFException">csrfException</prop>
        <prop key="com.mycomp.project.domain.exception.KeyEncryptionKeyException">keyEncryptionKeyException</prop>
        <prop key="java.lang.Exception">exception</prop>
    </props>
</property>
<property name="defaultErrorView" value="exception" />

一切都很好。

但我有单独的观点&amp;我的Web应用程序的两个部分的控制器,我需要处理异常并需要显示与其他视图不同的视图。因此,如果发生异常,我需要的是一个不同的视图:

myproject / admin /

不同观点:

myproject的/用户/

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您可以实现HandlerExceptionResolver,并且在resolveException方法上,您可以根据正在执行的处理程序在视图查找中添加前缀。