2014-12-08 14 views
5

mój serwer tomcat nie startuje w Eclipse, który działał dobrze wcześniej, ale teraz pokazuje następujący wyjątek. chociaż działa całkiem dobrze poza zaćmieniem. ale gdy próbuję uruchomić serwer następujący wyjątek i pokazuje się komunikat = „zaczynając serwer Tomcat serwer v8.0 na localhost napotkał problem”wyjątek nullpointer na starcie tomcat

Dec 08, 2014 4:35:16 PM org.apache.coyote.AbstractProtocol destroy 
INFO: Destroying ProtocolHandler ["ajp-nio-8009"] 
Dec 08, 2014 4:35:16 PM org.apache.coyote.AbstractProtocol destroy 
SEVERE: Failed to destroy end point associated with ProtocolHandler ["ajp-nio-8009"] 
java.lang.NullPointerException 
    at org.apache.tomcat.util.net.NioEndpoint.releaseCaches(NioEndpoint.java:307) 
    at org.apache.tomcat.util.net.NioEndpoint.unbind(NioEndpoint.java:482) 
    at org.apache.tomcat.util.net.AbstractEndpoint.destroy(AbstractEndpoint.java:795) 
    at org.apache.coyote.AbstractProtocol.destroy(AbstractProtocol.java:531) 
    at org.apache.catalina.connector.Connector.destroyInternal(Connector.java:1023) 
    at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:305) 
    at org.apache.catalina.core.StandardService.destroyInternal(StandardService.java:588) 
    at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:305) 
    at org.apache.catalina.core.StandardServer.destroyInternal(StandardServer.java:850) 
    at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:305) 
    at org.apache.catalina.startup.Catalina.start(Catalina.java:629) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:351) 
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:485) 
+0

Proszę podać kompletny stacktrace – Lrrr

+0

Ten stacktrace może być wynikiem poprzedniego błędu. Pomocne jest wysyłanie pełnego stosu. – hemanth

+0

Przepraszam, widziałem cały ślad stosu. nie widziałem tego pierwszy. był to wyjątek wyjątku współbieżnego. problem został rozwiązany. – Techno

Odpowiedz

1

StackTrace wydaje się wskazywać, że ma Tomcat już zdecydował, że uruchomienie nie powiodło się i że NPE wystąpił podczas próby zamknięcia.

Spodziewam się, że prawdziwy problem (tj. Ten, który spowodował, że Tomcat zrezygnował z próby uruchomienia) znajduje się wcześniej w pliku dziennika.


Faktycznie kod źródłowy Tomcat potwierdza:

protected void releaseCaches() { 
    this.keyCache.clear(); 
    this.nioChannels.clear(); 
    this.processorCache.clear(); 
    if (handler != null) handler.recycle(); 
} 

NullPointerException oznacza tutaj, że keyCache lub nioChannels lub processorCache jest null. (Myślę), że może się to zdarzyć tylko wtedy, gdy coś poszło nie tak podczas budowy obiektu NioEndPoint, ponieważ te trzy pola to private final. Lub przynajmniej są w wersji, na którą patrzyłem.

1

To mi się przydarzyło, ponieważ źle skonfigurowałem serwer Tomcat. Usunięcie go i utworzenie nowego wpisu serwera pomogło.

Powiązane problemy