2012-10-29 2 views
1

404 페이지를 생성했으며 현재 존재하지 않는 간단한 페이지 요청으로이를 테스트하고 있습니다. 이 코드는 내가 만든 오류 페이지 (일명 원하는 결과)를 보여줍니다.Java 오류 페이지 구성

<!-- CONFIGURATION FOR ERROR PAGES --> 
<error-page> 
    <!--<exception-type>java.lang.Throwable</exception-type>--> 
    <error-code>404</error-code> 
    <location>/videoNotFound</location> 
</error-page> 

그러나, 아파치 톰캣 기본 오류 페이지

<!-- CONFIGURATION FOR ERROR PAGES --> 
<error-page> 
    <exception-type>java.lang.Throwable</exception-type> 
    <!--<error-code>404</error-code>--> 
    <location>/videoNotFound</location> 
</error-page> 

어떤 아이디어가 표시됩니다이 코드는 왜이 발생, 아니면이 문제를 해결하려면 내가 시도 수 있을까? 옵션 1이 작동하더라도 각 예외 유형별로 특정 오류 페이지를 갖고 싶지 않기 때문에 옵션 2를 선호합니다.

+0

을해야합니다 기본 404 페이지를 의미합니까? 또는 500 내부 서버 오류입니까? Tomcat 콘솔에서 예외 추적을 볼 수 있습니까? 수신중인 http 상태 코드를 확인할 수 있습니까? – mzzzzb

답변

2

404java.lang.Throwable은 상황에 따라 서로 다른 두 가지 오류 조건이 있습니다. 존재하지 않는/도달 할 수없는 리소스를 요청하여 자신을 테스트 한 것과 같은 404이 발생하고 내부 서버/프로그래밍 오류의 결과로 발생하는 java.lang.Throwable은 오류 상태이며 http 상태 코드 500으로 표시됩니다. 이 조건에서는 도달 할 수없는 리소스에 간단히 액세스하여 시뮬레이션 할 수 없습니다. 4xx 상태 코드의 성격은 일반적으로 500 시리즈 오류 코드가 대부분 웹 응용 프로그램을 생성하는 동안 요청이 웹 응용 프로그램에 도착하기 전에 발생합니다. 이를 테스트 할 수있는 유일한 방법은 throwable Exception 또는 Error의 인스턴스를 웹 응용 프로그램 코드 내에 던져 넣는 것입니다.

결국

, 당신은 두 개의 별도 error-page 정의, _APACHE 바람둥이 기본 오류 page_로 500/throwable 유형의 오류 조건에 대한 컨테이너 관련 오류 (본질적으로 4xx 상태 코드)에 대한 다른 하나