2012-06-08 2 views
5

Tomcat이 배포하지 않을 WAR가 있습니다. 일반적으로 Tomcat의 catalina 로그 출력은 단순히 응용 프로그램을 배포하지 않을 이유 또는 표시를 제공하지만 :WAR가 Tomcat 7.0.19에 배포되지 않습니다

SEVERE : 문맥 [/ appmon-QA] 시작이 때문에 이전 오류

가 여기에 실패 web.xml입니다 :

<?xml version="1.0" encoding="UTF-8"?> 
<web-app 
    xmlns="http://java.sun.com/xml/ns/j2ee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" 
    version="2.4"> 

    <!-- The display name of this web application --> 
    <display-name>AppMonitor</display-name> 

    <listener> 
     <listener-class> 
      com.me.myorg.appmon.AppMonitor 
     </listener-class> 
    </listener> 
</web-app> 

그리고 그 AppMonitor 클래스 안에 중요한 물건 :

public class AppMonitor implements ServletContextListener { 
    @Override 
    public void contextDestroyed(ServletContextEvent event) { 
     return; 
    } 

    @Override 
    public void contextInitialized(ServletContextEvent event) { 
     try { 
      // Guts of my monitor app 
     } catch(Exception exc) { 
      System.out.println("Something bad happened!\n" + exc.getMessage()); 
     } 
    } 
} 

그리고 현저하게 막연한/undescriptive 로그 출력 :

INFO: Deploying web application archive appmon-qa.war 
Jun 8, 2012 9:45:30 AM org.apache.catalina.core.StandardContext startInternal 
SEVERE: Error listenerStart 
Jun 8, 2012 9:45:31 AM org.apache.catalina.core.StandardContext startInternal 
SEVERE: Context [/appmon-qa] startup failed due to previous errors 
Jun 8, 2012 9:45:31 AM org.apache.catalina.startup.HostConfig deployDirectory 
INFO: Deploying web application directory docs 
Jun 8, 2012 9:45:31 AM org.apache.catalina.startup.HostConfig deployDirectory 
INFO: Deploying web application directory examples 
Jun 8, 2012 9:45:32 AM org.apache.catalina.startup.HostConfig deployDirectory 
INFO: Deploying web application directory host-manager 
Jun 8, 2012 9:45:32 AM org.apache.catalina.startup.HostConfig deployDirectory 
INFO: Deploying web application directory manager 
Jun 8, 2012 9:45:32 AM org.apache.catalina.startup.HostConfig deployDirectory 
INFO: Deploying web application directory ROOT 
Jun 8, 2012 9:45:32 AM org.apache.coyote.AbstractProtocol start 
INFO: Starting ProtocolHandler ["http-bio-8080"] 
Jun 8, 2012 9:45:32 AM org.apache.coyote.AbstractProtocol start 
INFO: Starting ProtocolHandler ["ajp-bio-8009"] 
Jun 8, 2012 9:45:32 AM org.apache.coyote.AbstractProtocol start 
INFO: Starting ProtocolHandler ["http-nio-8010"] 
Jun 8, 2012 9:45:32 AM org.apache.catalina.startup.Catalina start 
INFO: Server startup in 2875 ms 

나는이 WAR을 배포 취소 내가 잘 작동 알고 다른 하나를 배포하고 톰캣 7.0.19가 출시 아무런 문제없이, 을 알고 있습니다. Tomcat/configuration 문제가 아닙니다. 이것은 내 WAR에 분명히 잘못된 것입니다. 내 (슈퍼 간단한) web.xml에 문제가 있었다면, 톰캣 로그 출력에 불평한다

appmon-qa.war/ 
    META-INF/ 
     MANIFEST.MF 
    WEB-INF/ 
     classes/ 
      All of my binaries 
     lib/ 
      All JAR dependencies 
     web.xml 

다음과 같이 디렉토리 구조입니다. 내 web.xml/ServletContextListener 괜찮 았지만 뭔가 내 contextInitialized 메서드 내에서 예외를 던지고 있었다면, catch 블록은 콘솔에 메시지를 인쇄 할 것입니다 -하지만 그건 일어나지 않습니다.

근본적인 문제가 될 수있는 것에 대한 아이디어 또는이 진단을 시작해야하는 옵션은 무엇입니까? 미리 감사드립니다!

+0

술집이어야합니다. lic void contextDestroyed. 그건 오타예요? –

+0

정말'public contextDestroyed (ServletContextEvent event)'입니까? '무효'는 어디에 있습니까? –

+0

네, 죄송합니다. 오타 편집이었습니다! – IAmYourFaja

답변

1

메소드에서 수퍼 클래스를 호출해야합니다.

@Override 
public void contextInitialized(ServletContextEvent servletContextEvent) { 
     super.contextInitialized(servletContextEvent); 

.... 당신이 당신의 Tomcat 서버에 로그 레벨을 증가해야합니다 수있는 추가로 }

@Override 
    public void contextDestroyed(ServletContextEvent servletContextEvent) { 
     super.contextDestroyed(servletContextEvent); 
    } 

(아마도 log4j에 통합) http://tomcat.apache.org/tomcat-7.0-doc/logging.html

미하이

관련 문제