1

我在Tomcat 6.0服務器本地開發了我的應用程序,並且每當遇到異常, 它成功調用錯誤頁面(jsp)並顯示異常。但我面對的問題是,當相同的應用程序部署在Web邏輯服務器和每當用戶得到一個異常(運行時異常),它不會被重定向到錯誤頁面,而是我得到404錯誤 框架工作 - Spring MVC的 錯誤的網頁地址 - /WEB-INF/jsp/error.jsp錯誤頁面在tomcat中正常工作,但在weblogic中不正常

任何幫助將不勝感激.PFB我的web.xml片段

<error-page> 
    <exception-type>java.lang.Throwable</exception-type> 
    <location>/WEB-INF/jsp/error.jsp</location> 
    </error-page> 

    <error-page> 
     <exception-type>java.lang.RuntimeException</exception-type> 
     <location>/WEB-INF/jsp/error.jsp</location> 
    </error-page> 
+0

這聽起來像它找不到JSP。您確定它包含在您的部署的類路徑中嗎? – CodeChimp

+0

是的聽起來像在weblogic它不能找到錯誤jsp.Now我試圖用SimpleMappingExceptionResolver(而不是取決於servlet容器)impliment這將讓你知道結果 – Thomas

回答

-1

我已經通過移動整個得到了解決從servlet容器到Spring容器的邏輯。

您需要在springservlet.xml中配置CustomSimpleMappingExceptionResolver。下面

<bean 
    class="com.****.CustomSimpleMappingExceptionResolver" 
     p:warnLogCategory="org.springframework.web.servlet.DispatcherServlet"> 
     <property name="defaultErrorView" value="error" /> 
     <property name="exceptionMappings"> 
     <props> 
      <prop key=".MissingServletRequestParameterException">error</prop> 
      </props> 
    </property> 
</bean> 

給出然後

  1. 定義error.jsp頁面
  2. 創建自定義異常類和配置的SimpleMappingExceptionResolver配置類相同的配置應該做的。
  3. 在此改變doResolveException中的SimpleMappingExceptionResolver

    @覆蓋 保護的ModelAndView doResolveException(HttpServletRequest的請求, HttpServletResponse的響應,對象處理器,例外){

    -------------------some code----------  
    

    返回 「」;

    }

相關問題