- - PR -
Jrun4でのcommons-loggingとlog4jの利用時のエラー
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 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) |
|
投稿日時: 2005-05-18 11:39
これだけだと、そもそもそのWebアプリケーションの問題かどうかわからないですね。
StrutsのActionServletをインスタンス化する際にクラスがない、とエラーになっている ようですが、Strutsを使っていますか? もし使っているのであれば、struts.jarはどこに 配置されているでしょうか。 |
|
投稿日時: 2005-05-18 12:13
ukさん、
返信ありがとうございます。 strutsを利用しています。 struts.jarなどアプリに必要なjarはWEB-INF/libに配置しています。 また、log4j.jarをWEB-INF/libから削除し、プログラムより ログの出力記述を削除すると、warのデプロイは正常に出来ます。 デプロイしたアプリも正常に動作します。 よろしくお願いします。 以上。 |
1