java.lang.classcastException은 javax.servlet.servletexception에 캐스트 할 수 없습니다

StackOverflow https://stackoverflow.com/questions/1703412

문제

Java 응용 프로그램을 AppSpot (Google Appengine)에 배치하려고합니다. 나는 Java를 처음 접 했으므로 저와 함께하십시오. Eclipse에서 로컬로 응용 프로그램을 실행하면 잘 실행됩니다. Google AppSpot에 업로드 한 후 오류가 발생합니다 (.jsp 페이지 중 하나에서만 다른 .jsp 페이지가 잘 작동합니다). 오류 로그는 다음과 같이 말합니다.

   Uncaught exception from servlet

java.lang.ClassCastException: java.lang.ClassCastException cannot be cast to javax.servlet.ServletException
    at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:754)

누군가이 문제에 대해 약간의 빛을 발할 수 있습니까? 이 특정 페이지에서 무엇이 잘못 될 수 있습니까? 페이지 코드를보고 싶다면 알려주세요.

도움이 되었습니까?

해결책

코드의 무언가가 도출되지 않는 예외를 던지고있는 것 같습니다. ServletException. 핸들러 업스트림은 그 예외를 포착하고 있으며 (아마도) 지능적인 일을하려고 노력하고 있습니다.

아마도 예외가 처음에 던져지는 또 다른 근본적인 문제가있을 것입니다. 그러나 예외가 무엇인지 먼저 볼 수 있습니다.

이 예외가 어디에 있는지 확실하지 않으면 전체 페이지 핸들러를 try ... catch 블록, 모두를 찾고 있습니다 Throwable'에스. 당신이 하나를 찾으면, ServletException:

try {
    // handle page request
} catch (Throwable t) {
    throw new ServletException(t);
}

이를 통해 웹 서버가 예외를 표시하여 문제를 계속 추적 할 수 있습니다. 이것은 아마도 임시 코드 일 것입니다.

다른 팁

web-inf/lib에서 javax.servlet.servletexception.class의 인스턴스를 찾으십시오. servler.jar 또는 servlet.api.jar의 내용은 컨테이너를 제공해야하며 전쟁 파일에 표시되지 않아야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top