Hello,
i try to migrate a webapplication that was working fine on tomcat 5.5. Since JBoss web
container is based on tomcat, i thought this migration would be straightforward. However,
after deployement i get this strange error i can't locate:
jvm 1 | 19:10:45,775 ERROR [[/intranet]] Error configuring application listener of
class org.apache.commons.chain.web.ChainListener
| jvm 1 | java.lang.ExceptionInInitializerError
| jvm 1 | at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
| jvm 1 | at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
| jvm 1 | at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
| jvm 1 | at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
| jvm 1 | at java.lang.Class.newInstance0(Class.java:355)
| jvm 1 | at java.lang.Class.newInstance(Class.java:308)
| jvm 1 | at
org.jboss.web.tomcat.service.TomcatInjectionContainer.newInstance(TomcatInjectionContainer.java:264)
| jvm 1 | at
org.jboss.web.tomcat.service.TomcatInjectionContainer.newInstance(TomcatInjectionContainer.java:256)
| jvm 1 | at
org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3859)
| jvm 1 | at
org.apache.catalina.core.StandardContext.start(StandardContext.java:4393)
| jvm 1 | at
org.jboss.web.tomcat.service.deployers.TomcatDeployment.performDeployInternal(TomcatDeployment.java:310)
| jvm 1 | at
org.jboss.web.tomcat.service.deployers.TomcatDeployment.performDeploy(TomcatDeployment.java:142)
| jvm 1 | at
org.jboss.web.deployers.AbstractWarDeployment.start(AbstractWarDeployment.java:461)
| jvm 1 | at org.jboss.web.deployers.WebModule.startModule(WebModule.java:118)
| jvm 1 | at org.jboss.web.deployers.WebModule.start(WebModule.java:97)
| jvm 1 | at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
| jvm 1 | at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
| jvm 1 | at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| jvm 1 | at java.lang.reflect.Method.invoke(Method.java:597)
| jvm 1 | at
org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:157)
| jvm 1 | at org.jboss.mx.server.Invocation.dispatch(Invocation.java:96)
| jvm 1 | at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
| jvm 1 | at
org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
| jvm 1 | at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:668)
| jvm 1 | at
org.jboss.system.microcontainer.ServiceProxy.invoke(ServiceProxy.java:206)
| jvm 1 | at $Proxy38.start(Unknown Source)
| jvm 1 | at
org.jboss.system.microcontainer.StartStopLifecycleAction.installAction(StartStopLifecycleAction.java:42)
| jvm 1 | at
org.jboss.system.microcontainer.StartStopLifecycleAction.installAction(StartStopLifecycleAction.java:37)
| jvm 1 | at
org.jboss.dependency.plugins.action.SimpleControllerContextAction.simpleInstallAction(SimpleControllerContextAction.java:62)
| jvm 1 | at
org.jboss.dependency.plugins.action.AccessControllerContextAction.install(AccessControllerContextAction.java:71)
| jvm 1 | at
org.jboss.dependency.plugins.AbstractControllerContextActions.install(AbstractControllerContextActions.java:51)
| jvm 1 | at
org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348)
| jvm 1 | at
org.jboss.system.microcontainer.ServiceControllerContext.install(ServiceControllerContext.java:286)
| jvm 1 | at
org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1631)
| jvm 1 | at
org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:934)
| jvm 1 | at
org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082)
| jvm 1 | at
org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:984)
| jvm 1 | at
org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:822)
| jvm 1 | at
org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:553)
| jvm 1 | at
org.jboss.system.ServiceController.doChange(ServiceController.java:688)
| jvm 1 | at org.jboss.system.ServiceController.start(ServiceController.java:460)
| jvm 1 | at
org.jboss.system.deployers.ServiceDeployer.start(ServiceDeployer.java:163)
| jvm 1 | at
org.jboss.system.deployers.ServiceDeployer.deploy(ServiceDeployer.java:99)
| jvm 1 | at
org.jboss.system.deployers.ServiceDeployer.deploy(ServiceDeployer.java:46)
| jvm 1 | at
org.jboss.deployers.spi.deployer.helpers.AbstractSimpleRealDeployer.internalDeploy(AbstractSimpleRealDeployer.java:62)
| jvm 1 | at
org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.deploy(AbstractRealDeployer.java:50)
| jvm 1 | at
org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:171)
| jvm 1 | at
org.jboss.deployers.plugins.deployers.DeployersImpl.doDeploy(DeployersImpl.java:1439)
| jvm 1 | at
org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1157)
| jvm 1 | at
org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1178)
| jvm 1 | at
org.jboss.deployers.plugins.deployers.DeployersImpl.install(DeployersImpl.java:1098)
| jvm 1 | at
org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348)
| jvm 1 | at
org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1631)
| jvm 1 | at
org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:934)
| jvm 1 | at
org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082)
| jvm 1 | at
org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:984)
| jvm 1 | at
org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:822)
| jvm 1 | at
org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:553)
| jvm 1 | at
org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:781)
| jvm 1 | at
org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:702)
| jvm 1 | at
org.jboss.system.server.profileservice.repository.MainDeployerAdapter.process(MainDeployerAdapter.java:117)
| jvm 1 | at
org.jboss.system.server.profileservice.hotdeploy.HDScanner.scan(HDScanner.java:362)
| jvm 1 | at
org.jboss.system.server.profileservice.hotdeploy.HDScanner.run(HDScanner.java:255)
| jvm 1 | at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
| jvm 1 | at
java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
| jvm 1 | at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
| jvm 1 | at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
| jvm 1 | at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:181)
| jvm 1 | at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:205)
| jvm 1 | at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
| jvm 1 | at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
| jvm 1 | at java.lang.Thread.run(Thread.java:619)
| jvm 1 | Caused by: org.apache.commons.logging.LogConfigurationException:
User-specified log class 'org.apache.commons.logging.impl.Log4JLogger' cannot be
found or is not useable.
| jvm 1 | at
org.apache.commons.logging.impl.LogFactoryImpl.discoverLogImplementation(LogFactoryImpl.java:798)
| jvm 1 | at
org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:601)
| jvm 1 | at
org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:333)
| jvm 1 | at
org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:307)
| jvm 1 | at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:645)
| jvm 1 | at
org.apache.commons.chain.web.ChainListener.<clinit>(ChainListener.java:144)
| jvm 1 | ... 72 more
|
However, log4jlogger is there inside the WEB-INF/lib/commons-logging-1.1.1.jar, so i
don't know why tomcat/jboss doesn't see it.
$ ls WEB-INF/lib/commons*
| WEB-INF/lib/commons-beanutils-1.7.0.jar
WEB-INF/lib/commons-configuration-1.2.jar WEB-INF/lib/commons-fileupload-1.0.jar
WEB-INF/lib/commons-pool-1.2.jar
| WEB-INF/lib/commons-beanutils-core-1.7.0.jar WEB-INF/lib/commons-dbcp-1.2.jar
WEB-INF/lib/commons-httpclient-3.1.jar WEB-INF/lib/commons-transaction-1.1.jar
| WEB-INF/lib/commons-chain-1.0.jar WEB-INF/lib/commons-digester-1.6.jar
WEB-INF/lib/commons-io-1.3.2.jar WEB-INF/lib/commons-validator-1.1.4.jar
| WEB-INF/lib/commons-codec-1.2.jar WEB-INF/lib/commons-discovery-0.2.jar
WEB-INF/lib/commons-lang-2.1.jar
| WEB-INF/lib/commons-collections-3.1.jar WEB-INF/lib/commons-el-1.0.jar
WEB-INF/lib/commons-logging-1.1.1.jar
I've read from various post on internet that jboss has problems handling
commons-logging, because it does not let webapp provide their own implementation. Is it
true? If yes, how can i work aroud this? As far as i know, jboss passes J2EE5 tests, which
mandates that war classes override server classes, except for J2EE apis. So it should be
possible to have jboss handle this correctly.
View the original post :
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4266227#...
Reply to the post :
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&a...