1

Logback をロギング フレームワークとして使用して Web アプリケーションを開発しており、Tomcat 6 でテストしています。何らかの理由で、logback.xmlが読み取られません。

  • logback.xmlWEB-INF/classesにあります。
  • ログバック自体はWEB-INF/libにあります。
  • SLF4Jを使用しています。
  • LoggerFactory.getLogger(...)ログバックが使用されています: catalina.outにログ メッセージが表示され、ログバック ロガー インスタンスが返されます。
  • すでにアプリをリロードし、Tomcat を再起動しました。

何が起こっているのか分かりますか?

更新: 何かもっと深いことが起こっているようです。これらは以下を返しnullます:

// in a servlet
getClass().getClassLoader().getResource("/logback.xml");
getClass().getClassLoader().getResource("MyServlet.class");

クラスローダーをログに記録すると、すべてが正常に表示されます。

22:32:11.221 [http-8080-1] INFO test.MyServlet - WebappClassLoader
  context: /test
  delegate: false
  repositories:
     /WEB-INF/classes/
----------> Parent Classloader:
org.apache.catalina.loader.StandardClassLoader@630f41e9
4

1 に答える 1

1

それはLinuxの許可の問題でした。一部のディレクトリに読み取り/実行権限がありません。さらに問題が発生したときに誤って修正しました。

于 2011-05-02T11:31:10.883 に答える