2009-05-12 9 views
2

私はTomcat 5.5サーバー上でいくつかのWebアプリケーションを実行しています。システム全体で使用されている全体的なログシステムの改善/更新に取り組んでいます。私はすでにlogback-classicでいくつかの成功を収めていました。 Tomcat 5.5との組み合わせでログバックアクセスを使用するにはどうすればよいですか?

 
    common/lib: 
    logback-classic-0.9.15.jar 
    logback-core-0.9.15.jar 
    server/lib: 
    logback-access-0.9.15.jar 

が周りの移動:私はすべてが docsに応じて設定している

 
exception 

javax.servlet.ServletException: 
    Wrapper cannot find servlet class 
    ch.qos.logback.access.ViewStatusMessagesServlet 
    or a class it depends on 

org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433) 
... 

root cause 

java.lang.ClassNotFoundException: 
    ch.qos.logback.access.ViewStatusMessagesServlet 

org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1386) 
... 

:私は(すなわちlbAccessStatusサーブレットにアクセス)logback-アクセスを使用しようとすると、しかし、私はこの例外を取得します図書館は役に立たないようです。 logback-classicは正常に動作するようですが、問題を引き起こすのはログバックアクセスだけです。

答えて

0

私はまだtomcatでログバックアクセスを使用していません。

common/lib: 
    logback-access-0.9.15.jar 
    logback-classic-0.9.15.jar 
    logback-core-0.9.15.jar 
server/lib: 
    logback-access-0.9.15.jar 
    logback-core-0.9.15.jar 

logback-アクセスが依存関係としてlogback-コアを持っている:私は、私はしかし、以下の設定をしようとすることをお勧めしたい...桟橋で

それを使用しました。サーバー(Valve)とWebアプリケーション(ViewStatusMessagesServlet)の両方で使用するので、両方のクラスパスに追加する必要があります。

logback-access、logback-classic、およびlogback-coreをcommon/libに追加するのではなく、webappクラスパスに追加して、すべてのWebアプリケーションで使用できるようにすることもできます。

希望に役立ちます。

-1

logback-accessをcommon/libにも置くと、すべてのjarがそこにあるので、どこでも利用できるはずです。あなたはそれを試しましたか?

また、ログはTomcat 6で修正されました。

+0

はそうDLL地獄のように感じています。クラスローダーの詳細でデバッグする必要があります。 – whatnick

+0

whatnick、その場合は、より良い答えを書いてください。 –

1

私はそれが働いている。 mavenとlogback-classicの場合、ジャンパーはWEB-INF/libで終わり、うまくいきます。 旧バージョンのWARをデプロイするときにだけ同じエラーが発生しました。私のpom.xml

<dependency> 
    <groupId>org.slf4j</groupId> 
    <artifactId>slf4j-api</artifactId> 
    <version>${slf4j.version}</version> 
</dependency> 
<dependency> 
    <groupId>ch.qos.logback</groupId> 
    <artifactId>logback-classic</artifactId> 
    <version>0.9.21</version> 
</dependency> 

...と関連の依存関係セクションの

抜粋私ののweb.xmlの一部:周りのjarファイルを拡散

<servlet> 
    <servlet-name>LogbackViewStatusMessages</servlet-name> 
    <servlet-class>ch.qos.logback.classic.ViewStatusMessagesServlet</servlet-class> 
    </servlet> 
    <!-- see http://localhost:8080/oam-portal-portlets/logs --> 
    <servlet-mapping> 
    <servlet-name>LogbackViewStatusMessages</servlet-name> 
    <url-pattern>/logback</url-pattern> 
    </servlet-mapping> 
関連する問題