Spring MVC Initialisierung Bewirkt, dass Log4J Ausnahme

In meine webapp, ich bin mit Spring MVC als meine controller-Schicht. Allerdings verwenden Sie die tags von der MVC-Kontext:

<mvn:annotation-driven />
<mvc:resources />

bewirkt eine log4j Ausnahme:

<Mar 26, 2012 1:49:50 PM EDT> <Warning> <HTTP> <BEA-101162> <User defined listener         
org.springframework.web.context.ContextLoaderListener failed:
java.lang.NoClassDefFoundError: org/apache/log4j/spi/ThrowableInformation.
java.lang.NoClassDefFoundError: org/apache/log4j/spi/ThrowableInformation
at org.apache.log4j.spi.LoggingEvent.<init>(LoggingEvent.java:165)
at org.apache.log4j.Category.forcedLog(Category.java:391)
at org.apache.log4j.Category.log(Category.java:856)
at org.slf4j.impl.Log4jLoggerAdapter.log(Log4jLoggerAdapter.java:597)
at org.apache.commons.logging.impl.SLF4JLocationAwareLog.error(SLF4JLocationAwareLog.java:225)
Truncated. see log file for complete stacktrace

(LoggingEvent.java:165)
bei org.apache.log4j.Kategorie.forcedLog(Kategorie.java:391)
bei org.apache.log4j.Kategorie.log(Kategorie.java:856)
bei org.slf4j.impl.Log4jLoggerAdapter.log(Log4jLoggerAdapter.java:597)
bei org.apache.Unterhaus.die Protokollierung.impl.SLF4JLocationAwareLog.Fehler(SLF4JLocationAwareLog.java:225)
Abgeschnitten. siehe log-Datei für die komplette stacktrace

Grundlegende Dinge:

  1. log4j-1.2.16.jar definiert wird in der maven-POM und ist in der Anwendungs-Bibliothek.

  2. Da es ein weblogic-server habe ich Folgendes in der weblogic.xml Datei, um zu versuchen, Konflikte zu vermeiden:

    <wls:prefer-application-packages>
        <wls:package-name>org.apache.log4j.*</wls:package-name>
    </wls:prefer-application-packages>
  3. (Update), die ich manuell ausgeschlossen commons-logging in der maven-POM für die Anwendung.

  4. (Update) hatte ich bereits die slf4j jar-Dateien in mein Maven-POM (Entfernung der jcl-over-slf4j hat keine Wirkung):

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>jcl-over-slf4j</artifactId>
        <version>1.5.8</version>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>1.5.8</version>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-log4j12</artifactId>
        <version>1.5.8</version>
        <scope>runtime</scope>
    </dependency>

Grundsätzlich, ich brauche, um auszuschließen, die grundlegende css-und js Verzeichnisse im web als ein einzelnes Verzeichnis unter WEB-INF/enthält einige jspf-Dateien, die ich NICHT schreiben will, einen controller für den (dropdown-Menüs, Definitionen von jquery superfish).

Hilfe?

InformationsquelleAutor Jason | 2012-03-26
Schreibe einen Kommentar