- PR -

Jrun4でのcommons-loggingとlog4jの利用時のエラー

1
投稿者投稿内容
POTETO
常連さん
会議室デビュー日: 2003/10/06
投稿数: 41
投稿日時: 2005-05-18 11:18
いつも世話になります。

現在JRun4でWebアプリの作成を行っているのですが、
commonsのloggingとlog4jを利用してログを出力しようとすると
warのデプロイ時にNoClassDefFoundErrorが発生します。
このような経験のある方は対処法をご教授願います。
loggingは1.0.4をlog4jは1.2.9をWEB-INF/libに格納し利用しています。

よろしくお願い致します。

以下例外発生のトレースです。
java.lang.NoClassDefFoundError: org/apache/log4j/Layout
at org.apache.commons.logging.impl.Log4jFactory.getInstance(Log4jFactory.java:140)
at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:257)
at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:390)
at org.apache.struts.action.ActionServlet.<clinit>(ActionServlet.java:228)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
at java.lang.Class.newInstance0(Class.java:308)
at java.lang.Class.newInstance(Class.java:261)
at jrun.servlet.WebApplicationService.loadServlet(WebApplicationService.java:1230)
at jrun.servlet.WebApplicationService.preloadServlets(WebApplicationService.java:789)
at jrun.servlet.WebApplicationService.postStart(WebApplicationService.java:291)
at jrun.deployment.DeployerService.initModules(DeployerService.java:711)
at jrun.deployment.DeployerService.createWatchedDeployment(DeployerService.java:242)
at jrun.deployment.DeployerService.deploy(DeployerService.java:430)
at jrun.deployment.DeployerService.checkWatchedDirectories(DeployerService.java:179)
at jrun.deployment.DeployerService.run(DeployerService.java:891)
at jrunx.scheduler.SchedulerService.invokeRunnable(SchedulerService.java:223)
at jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.java:426)
at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66)
uk
ぬし
会議室デビュー日: 2003/05/20
投稿数: 1155
お住まい・勤務地: 東京都
投稿日時: 2005-05-18 11:39
これだけだと、そもそもそのWebアプリケーションの問題かどうかわからないですね。
StrutsのActionServletをインスタンス化する際にクラスがない、とエラーになっている
ようですが、Strutsを使っていますか? もし使っているのであれば、struts.jarはどこに
配置されているでしょうか。
POTETO
常連さん
会議室デビュー日: 2003/10/06
投稿数: 41
投稿日時: 2005-05-18 12:13
ukさん、
返信ありがとうございます。

strutsを利用しています。
struts.jarなどアプリに必要なjarはWEB-INF/libに配置しています。

また、log4j.jarをWEB-INF/libから削除し、プログラムより
ログの出力記述を削除すると、warのデプロイは正常に出来ます。
デプロイしたアプリも正常に動作します。

よろしくお願いします。
以上。
1

スキルアップ/キャリアアップ(JOB@IT)