4

EJB Maven プロジェクトに依存する Maven war プロジェクトがあります。EJB プロジェクトは、Hibernate を介した DB アクセスを含むすべてのビジネス ロジックを処理します。どちらのプロジェクトも JEE6 であり、maven を使用して glassfish 3.1.2 で実行されます。現在、説明されているシナリオで Log4j が機能するように構成しようとしています (休止状態もログに記録します)。ejb の src/main/resources フォルダーに次の log4j.xml ファイルがあります (クラスパスにあると思います)。

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

    <log4j:configuration xmlns:log4j=
                "http://jakarta.apache.org/log4j/"
                        debug="false">

        <appender name="consoleAppender"
                class="org.apache.log4j.ConsoleAppender">
            <param name="Threshold" value="INFO" />
            <layout class="org.apache.log4j.PatternLayout">
                <param name="ConversionPattern" value="%d
                %-5p  [%c{1}] %m %n" />
            </layout>
        </appender>

        <logger name="javabeat.net.log4j" additivity="false" >
            <level value="INFO" />
            <appender-ref ref="consoleAppender"/>
        </logger>
    </log4j:configuration>

log4jからこのエラーが発生し続けます:

SEVERE: log4j:ERROR 「org.apache.log4j.xml.DOMConfigurator」オブジェクトを「org.apache.log4j.spi.Configurator」変数に割り当てることはできません。

SEVERE: log4j:ERROR クラス "org.apache.log4j.spi.Configurator" がロードされました

SEVERE: log4j:ERROR [WebappClassLoader (delegate=true; repositories=WEB-INF/classes/)] タイプのオブジェクトに対して

SEVERE: log4j:ERROR "org.apache.log4j.xml.DOMConfigurator" が [WebappClassLoader (delegate=true; repositories=WEB-INF/classes/)] によって読み込まれました。

SEVERE: log4j:ERROR コンフィギュレーター [org.apache.log4j.xml.DOMConfigurator] をインスタンス化できませんでした。

SEVERE: log4j:WARN ロガー (org.hibernate.type.BasicTypeRegistry) のアペンダーが見つかりませんでした。

SEVERE: log4j:WARN log4j システムを適切に初期化してください。

SEVERE: log4j:WARN 詳細については、http: //logging.apache.org/log4j/1.2/faq.html#noconfigを参照してください。

私は助けてくれたアイデアthxがありません

4

1 に答える 1

0

http://forum.spring.io/forum/spring-projects/batch/76295-log4j-classloader-problem

こんにちは、あなたが言及した問題は、ほとんどの場合、私が投稿したリンクで説明されているように、lib と tomcat lib ディレクトリに log4j.jar がある webapp がある場合に発生するため、選択する必要があります。 log4j、すべての webapps lib フォルダー、または tomcat lib ディレクトリのみ:)

アップデート:

また、tomcat lib および webapp lib ディレクトリに commons-logging.jar を複製しないようにする必要があります。

よろしく

于 2014-08-05T14:51:35.760 に答える