Po uruchomieniu Tomcata pojawia się następujący błąd:
Jun 10, 2010 5:17:25 PM org.apache.catalina.core.StandardContext start
SEVERE: Error filterStart
Jun 10, 2010 5:17:25 PM org.apache.catalina.core.StandardContext start
SEVERE: Context [/mywebapplication] startup failed due to previous errors
Wydaje się dziwne, że dzienniki Tomcat nie zawierały śladu stosu. Czy ktoś ma sugestię, jak zwiększyć logowanie w Tomcat, aby uzyskać ślady stosu dla takich błędów?
Odpowiedzi:
Sprawdź dzienniki
localhost_yyyy_mm_dd.log
OR,localhost.yyyy-mm-dd.log
które tworzy Tomcat, zazwyczaj przechowują one tego typu informacje. Nie spodziewałbym się, że pełny ślad stosu zostanie zrzucony do standardu.źródło
utwórz plik o nazwie logging.properties w WEB-INF / classes z następującą zawartością:
źródło
Tomcat rejestruje śledzenie stosu, ale nie zawsze jest jasne, gdzie znajdują się pliki dziennika, kiedy tomcat jest uruchamiany z IDE. Kiedy uruchamiam go z IntelliJ,
CATALINA_BASE
jest ustawiony na${home}/.IntelliJIdea10/system/tomcat/Unnamed_r6-idea
, a pliki dziennika są w[CATALINA_BASE]/logs
.Aby wyświetlić dzienniki, zlokalizuj pliki dziennika lub edytuj,
[CATALINA_HOME]/conf/logging.properties
aby skierować dane wyjściowe programu Tomcat Logger do konsoli. Poniżej dodałem drugi handler do domyślnej konfiguracji tomcat:Teraz pełny ślad stosu pojawia się w danych wyjściowych IntelliJ:
źródło
musisz skopiować pliki
a następnie uruchom ponownie tomcat
źródło
Być może Twoja aplikacja została skompilowana w innym środowisku JRE niż Tomcat.
Sprawdź
java -version
na serwerze, a następnie skompiluj swój kod w tej samej wersji. Wystąpił błąd, ponieważ moje standardowe środowisko JRE Eclipse to 1.6, a Tomcat użył 1.5 - to nie może działać.źródło
W CentOS 6 i Solr 4.4.0
Musiałem skompilować kilka plików lib, aby rozwiązać ten błąd
źródło
Zazwyczaj informacja o problemie znajduje się w localhost. [Data] .log. Ale czasami w tym dzienniku nie ma nic. Może się to zdarzyć, jeśli jest pomieszana konfiguracja projektu (kilku programistów długo nad tym pracowało i każdy dodał coś od siebie). Napotkałem ten problem BEZ żadnych informacji w logu. Raczej szybkie i solidne podejście:
Spróbuj usunąć wszystko, co może powodować problemy z pliku web.xml. Możesz nawet usunąć wszystko oprócz tagu. Jeśli nadal nie można wdrożyć aplikacji - kontynuuj.
Usuń każdy deskryptor * .xml z WEB-INF / classes. Jeśli aplikacji nie można wdrożyć - kontynuuj.
Usuń całą konfigurację logowania, którą możesz znaleźć na swojej wojnie (logging.properties, log4j.properties). Spróbuj wdrożyć. Na tym etapie mam więcej informacji o błędzie, ale wdrożenie nadal się nie powiodło.
Po wygooglowaniu tego błędu dowiedziałem się, że projekt zawiera starą wersję xerces, która kolidowała z wersją Tomcata (która była nowsza) i nie umożliwiała wdrożenia aplikacji. Po aktualizacji kserokopii w aplikacji internetowej wszystko poszło dobrze.
źródło
Konfiguracja logowania log4j dla Tomcat jest dość prosta. Oto cytat z http://tomcat.apache.org/tomcat-5.5-doc/logging.html :
Utwórz plik o nazwie log4j.properties z następującą zawartością i zapisz go w pliku common / classes.
Pobierz Log4J (v1.2 lub nowsza) i umieść jar log4j w $ CATALINA_HOME / common / lib.
Możesz również zajrzeć na http://wiki.apache.org/tomcat/FAQ/Logging
źródło
jeśli ktoś otrzymuje błąd, taki jak POWAŻNE: Filtr błędu Start 29 kwietnia 2013 16:49:20 org.apache.catalina.core.StandardContext startInternal SEVERE: Context [/ TraceMW] uruchomienie nie powiodło się z powodu poprzednich błędów
następnie sprawdź, czy twój katalog tomcat / lib zawiera cors-filter-1.5.jar czy nie. jeśli nie masz u, pojawi się powyższy błąd, a Twoja aplikacja nie będzie dostępna.
Tak więc właśnie udało mi się skopiować plik jar z innego folderu tomcat i nie otrzymałem później wspomnianego błędu.
źródło
Ja również dostałem ten sam błąd i bardzo się starałem rozwiązać ten problem. Spędziłem trochę czasu na przeszukiwaniu Google i znalazłem następujące rozwiązanie, a mój problem został rozwiązany.
problem wynikał z braku bibliotek Struts2 w ścieżce wdrażania. Większość ludzi może umieszczać biblioteki do kompilacji i zapomnieć o dołączaniu bibliotek wymaganych w czasie wykonywania. Więc dodałem te same biblioteki w zestawie wdrażania sieci Web i problem był WYŁĄCZONY.
źródło
Mam ten sam problem, nie mogę uruchomić aplikacji po jej wdrożeniu w tomcat. Ale po skopiowaniu zestawu słoików Struts do katalogu CATALINA_HOME \ lib (katalog Tomcat) problem został rozwiązany. Nie musisz mieć tych słoików w swoim WEB_INF \ lib, ale musisz je mieć w swojej ścieżce kompilacji.
commons-fileupload-1.2.1.jar
commons-io-1.3.2.jar
freemarker-2.3.16.jar
javassist-3.11.0.GA.jar
Struts2-convention-plugin-2.2.1.jar
struts2-core-2.2.1.jar
xwork-core-2.2.1.jar
źródło
Po prostu chciałem wnieść swój wkład po spędzeniu ostatniej godziny nad prawie identycznym problemem. Moim rozwiązaniem było to, że w jakiś sposób nasze aplikacje .jar zostały uszkodzone, więc umieszczenie pliku jar z naszego serwera deweloperskiego zapewniło poprawkę.
źródło
Miałem podobny problem. Wskazówka Renato zadziałała dla mnie. Użyłem starszej wersji plików klas java (w folderze WEB-INF / classes) i problem zniknął. Tak więc powinna to być niezgodność wersji kompilatora.
źródło
To załatwiło sprawę: po prostu usuń wszystkie biblioteki, a następnie skompiluj i uruchom. To podpowiedziałoby, że są błędy w twoim projekcie. Uruchom ponownie projekt po zastosowaniu bibliotek.
źródło
Ogólnie wersja JDK serwera będzie niższa niż wdrożona aplikacja (zbudowana z wyższą wersją jdk)
źródło
Uruchom następujące polecenie, aby wyświetlić dzienniki Catalina na terminalu ---
źródło