2013-11-27 75 views
0

我有一個基於Roo的應用程序。在Roo中定製未捕獲異常的響應代碼

如果異常接到我的控制器拋出,我的申請將呈現一個堆棧跟蹤到最終用戶,但響應將有200

狀態代碼如何自定義此,以便任何未捕獲的異常將導致代碼爲500的響應?

回答

0

在您的webmvc-config.xml設置defaultStatusCode財產org.springframework.web.servlet.handler.SimpleMappingExceptionResolver

實施例:

<bean class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver" p:defaultErrorView="uncaughtException"> 
    <property name="exceptionMappings"> 
     <props> 
      <prop key=".DataAccessException">dataAccessFailure</prop> 
      <prop key=".NoSuchRequestHandlingMethodException">resourceNotFound</prop> 
      <prop key=".TypeMismatchException">resourceNotFound</prop> 
      <prop key=".MissingServletRequestParameterException">resourceNotFound</prop> 
     </props> 
    </property> 
    <property name="defaultStatusCode"> 
     <value>500</value> 
    </property> 
</bean>