8 Replies Latest reply on Oct 8, 2013 5:23 AM by digit.elektra

    User-specified log class 'org.apache.commons.logging.impl.Lo

    delbd

      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.

        • 1. Re: User-specified log class 'org.apache.commons.logging.imp
          jaikiran

          Which version of JBoss AS is this?

          • 2. Re: User-specified log class 'org.apache.commons.logging.imp
            delbd

            sorry, did not specify, informations about jboss:

            jvm 1 | 09:52:36,250 INFO [ServerImpl] Release ID: JBoss [The Oracle] 5.1.0.GA (build: SVNTag=JBoss_5_1_0_GA date=200905221634)
            jvm 1 | 09:52:36,250 INFO [ServerImpl] Bootstrap URL: null
            jvm 1 | 09:52:36,250 INFO [ServerImpl] Home Dir: /web/intraweb/apps/jboss-5.1.0.GA
            jvm 1 | 09:52:36,251 INFO [ServerImpl] Home URL: file:/web/intraweb/apps/jboss-5.1.0.GA/
            jvm 1 | 09:52:36,251 INFO [ServerImpl] Library URL: file:/web/intraweb/apps/jboss-5.1.0.GA/lib/
            jvm 1 | 09:52:36,252 INFO [ServerImpl] Patch URL: null
            jvm 1 | 09:52:36,252 INFO [ServerImpl] Common Base URL: file:/web/intraweb/apps/jboss-5.1.0.GA/common/
            jvm 1 | 09:52:36,252 INFO [ServerImpl] Common Library URL: file:/web/intraweb/apps/jboss-5.1.0.GA/common/lib/
            jvm 1 | 09:52:36,252 INFO [ServerImpl] Server Name: default
            jvm 1 | 09:52:36,252 INFO [ServerImpl] Server Base Dir: /web/intraweb/apps/jboss-5.1.0.GA/server
            jvm 1 | 09:52:36,252 INFO [ServerImpl] Server Base URL: file:/web/intraweb/apps/jboss-5.1.0.GA/server/
            jvm 1 | 09:52:36,253 INFO [ServerImpl] Server Config URL: file:/web/intraweb/apps/jboss-5.1.0.GA/server/default/conf/
            jvm 1 | 09:52:36,253 INFO [ServerImpl] Server Home Dir: /web/intraweb/apps/jboss-5.1.0.GA/server/default
            jvm 1 | 09:52:36,253 INFO [ServerImpl] Server Home URL: file:/web/intraweb/apps/jboss-5.1.0.GA/server/default/
            jvm 1 | 09:52:36,253 INFO [ServerImpl] Server Data Dir: /web/intraweb/apps/jboss-5.1.0.GA/server/default/data
            jvm 1 | 09:52:36,253 INFO [ServerImpl] Server Library URL: file:/web/intraweb/apps/jboss-5.1.0.GA/server/default/lib/
            jvm 1 | 09:52:36,253 INFO [ServerImpl] Server Log Dir: /web/intraweb/apps/jboss-5.1.0.GA/server/default/log
            jvm 1 | 09:52:36,253 INFO [ServerImpl] Server Native Dir: /web/intraweb/apps/jboss-5.1.0.GA/server/default/tmp/native
            jvm 1 | 09:52:36,254 INFO [ServerImpl] Server Temp Dir: /web/intraweb/apps/jboss-5.1.0.GA/server/default/tmp
            jvm 1 | 09:52:36,254 INFO [ServerImpl] Server Temp Deploy Dir: /web/intraweb/apps/jboss-5.1.0.GA/server/default/tmp/deploy
            jvm 1 | 09:52:37,003 INFO [ServerImpl] Starting Microcontainer, bootstrapURL=file:/web/intraweb/apps/jboss-5.1.0.GA/server/default/conf/bootstrap.xml
            jvm 1 | 09:52:37,745 INFO [VFSCacheFactory] Initializing VFSCache [org.jboss.virtual.plugins.cache.CombinedVFSCache]
            jvm 1 | 09:52:37,748 INFO [VFSCacheFactory] Using VFSCache [CombinedVFSCache[real-cache: null]]
            jvm 1 | 09:52:38,099 INFO [CopyMechanism] VFS temp dir: /web/intraweb/apps/jboss-5.1.0.GA/server/default/tmp
            jvm 1 | 09:52:38,100 INFO [ZipEntryContext] VFS force nested jars copy-mode is enabled.
            jvm 1 | 09:52:39,777 INFO [ServerInfo] Java version: 1.6.0_17,Sun Microsystems Inc.
            jvm 1 | 09:52:39,777 INFO [ServerInfo] Java Runtime: Java(TM) SE Runtime Environment (build 1.6.0_17-b04)
            jvm 1 | 09:52:39,777 INFO [ServerInfo] Java VM: Java HotSpot(TM) 64-Bit Server VM 14.3-b01,Sun Microsystems Inc.
            jvm 1 | 09:52:39,777 INFO [ServerInfo] OS-System: Linux 2.6.24-24-xen,amd64
            


            • 3. Re: User-specified log class 'org.apache.commons.logging.imp
              jaikiran

               


              Caused by: org.apache.commons.logging.LogConfigurationException: User-specified log class 'org.apach
              e.commons.logging.impl.Log4JLogger' cannot be found or is not useable.



              However, log4jlogger is there inside the WEB-INF/lib/commons-logging-1.1.1.jar



              jboss-5.1.0.GA


              JBoss AS ignores the presence of jars containing org.apache.commons.logging from the web deployments. Change the following from JBOSS_HOME/server/< servername>/deployers/jbossweb.deployer/META-INF/war-deployers-jboss-beans.xml:
              <property name="filteredPackages">javax.servlet,org.apache.commons.logging</property>
              

              to
              <property name="filteredPackages">javax.servlet</property>
              

              This will remove the filtering and the commons logging jar will be visible to the classloader.

              This is fixed in later version of JBoss AS https://jira.jboss.org/jira/browse/JBAS-7117

              • 4. Solved: User-specified log class 'org.apache.commons.logging
                delbd

                This works, thanks

                • 5. Re: User-specified log class 'org.apache.commons.logging.imp
                  jkoder55

                  hi Jai,

                   

                  I have made the above changes and redeployed my application. Getting the following error when restarting the server.

                   

                  2010-11-18 15:34:35,369 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/MyApp]] (main) Servlet /MyApp threw load() exception
                  org.apache.commons.logging.LogConfigurationException: User-specified log class 'org.apache.commons.logging.impl.Log4JLogger' cannot be found or is not useable.
                  at org.apache.commons.logging.impl.LogFactoryImpl.discoverLogImplementation(LogFactoryImpl.java:874)
                  at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:604)
                  at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:336)
                  at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:704)
                  at org.springframework.web.servlet.DispatcherServlet.<clinit>(DispatcherServlet.java:208)
                  at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
                  at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
                  at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
                  at java.lang.reflect.Constructor.newInstance(Unknown Source)
                  at java.lang.Class.newInstance0(Unknown Source)
                  at java.lang.Class.newInstance(Unknown Source)
                  at org.jboss.web.tomcat.service.TomcatInjectionContainer.newInstance(TomcatInjectionContainer.java:264)
                  at org.jboss.web.tomcat.service.TomcatInjectionContainer.newInstance(TomcatInjectionContainer.java:256)
                  at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1006)
                  at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:950)
                  at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4122)
                  at org.apache.catalina.core.StandardContext.start(StandardContext.java:4421)
                  at org.jboss.web.tomcat.service.deployers.TomcatDeployment.performDeployInternal(TomcatDeployment.java:310)
                  at org.jboss.web.tomcat.service.deployers.TomcatDeployment.performDeploy(TomcatDeployment.java:142)
                  at org.jboss.web.deployers.AbstractWarDeployment.start(AbstractWarDeployment.java:461)
                  at org.jboss.web.deployers.WebModule.startModule(WebModule.java:118)
                  at org.jboss.web.deployers.WebModule.start(WebModule.java:97)
                  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                  at java.lang.reflect.Method.invoke(Unknown Source)
                  at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:157)
                  at org.jboss.mx.server.Invocation.dispatch(Invocation.java:96)
                  at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
                  at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
                  at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:668)
                  at org.jboss.system.microcontainer.ServiceProxy.invoke(ServiceProxy.java:206)
                  at $Proxy38.start(Unknown Source)
                  at org.jboss.system.microcontainer.StartStopLifecycleAction.installAction(StartStopLifecycleAction.java:42)
                  at org.jboss.system.microcontainer.StartStopLifecycleAction.installAction(StartStopLifecycleAction.java:37)
                  at org.jboss.dependency.plugins.action.SimpleControllerContextAction.simpleInstallAction(SimpleControllerContextAction.java:62)
                  at org.jboss.dependency.plugins.action.AccessControllerContextAction.install(AccessControllerContextAction.java:71)
                  at org.jboss.dependency.plugins.AbstractControllerContextActions.install(AbstractControllerContextActions.java:51)
                  at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348)
                  at org.jboss.system.microcontainer.ServiceControllerContext.install(ServiceControllerContext.java:286)
                  at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1631)
                  at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:934)
                  at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082)
                  at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:984)
                  at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:822)
                  at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:553)
                  at org.jboss.system.ServiceController.doChange(ServiceController.java:688)
                  at org.jboss.system.ServiceController.start(ServiceController.java:460)
                  at org.jboss.system.deployers.ServiceDeployer.start(ServiceDeployer.java:163)
                  at org.jboss.system.deployers.ServiceDeployer.deploy(ServiceDeployer.java:99)
                  at org.jboss.system.deployers.ServiceDeployer.deploy(ServiceDeployer.java:46)
                  at org.jboss.deployers.spi.deployer.helpers.AbstractSimpleRealDeployer.internalDeploy(AbstractSimpleRealDeployer.java:62)
                  at org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.deploy(AbstractRealDeployer.java:50)
                  at org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:171)
                  at org.jboss.deployers.plugins.deployers.DeployersImpl.doDeploy(DeployersImpl.java:1439)
                  at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1157)
                  at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1178)
                  at org.jboss.deployers.plugins.deployers.DeployersImpl.install(DeployersImpl.java:1098)
                  at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348)
                  at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1631)
                  at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:934)
                  at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082)
                  at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:984)
                  at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:822)
                  at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:553)
                  at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:781)
                  at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:702)
                  at org.jboss.system.server.profileservice.repository.MainDeployerAdapter.process(MainDeployerAdapter.java:117)
                  at org.jboss.system.server.profileservice.repository.ProfileDeployAction.install(ProfileDeployAction.java:70)
                  at org.jboss.system.server.profileservice.repository.AbstractProfileAction.install(AbstractProfileAction.java:53)
                  at org.jboss.system.server.profileservice.repository.AbstractProfileService.install(AbstractProfileService.java:361)
                  at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348)
                  at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1631)
                  at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:934)
                  at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082)
                  at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:984)
                  at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:822)
                  at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:553)
                  at org.jboss.system.server.profileservice.repository.AbstractProfileService.activateProfile(AbstractProfileService.java:306)
                  at org.jboss.system.server.profileservice.ProfileServiceBootstrap.start(ProfileServiceBootstrap.java:271)
                  at org.jboss.bootstrap.AbstractServerImpl.start(AbstractServerImpl.java:461)
                  at org.jboss.Main.boot(Main.java:221)
                  at org.jboss.Main$1.run(Main.java:556)
                  at java.lang.Thread.run(Unknown Source)
                  2010-11-18 15:34:35,416 INFO  [org.jboss.web.tomcat.service.deployers.TomcatDeployment] (main) deploy, ctxPath=/jmx-console
                  2010-11-18 15:34:35,525 INFO  [org.apache.coyote.http11.Http11AprProtocol] (main) Starting Coyote HTTP/1.1 on http-127.0.0.1-8080
                  2010-11-18 15:34:35,557 INFO  [org.apache.coyote.ajp.AjpAprProtocol] (main) Starting Coyote AJP/1.3 on ajp-127.0.0.1-8009
                  2010-11-18 15:34:35,557 INFO  [org.jboss.bootstrap.microcontainer.ServerImpl] (main) JBoss (Microcontainer) [5.1.0.GA (build: SVNTag=JBoss_5_1_0_GA date=200905221634)] Started in 47s:191ms

                   

                  Can you suggest me, if there any other changes which we need to make.

                  • 6. Re: User-specified log class 'org.apache.commons.logging.imp
                    jaikiran

                    Are you sure you changed the correct file? Which profile are you starting and which exact file did you change? And please post the new contents of that file. Also, how is your application packaged and where is the jar containing that class?

                    • 7. Re: User-specified log class 'org.apache.commons.logging.impl.Lo
                      stephan.beutel

                      I've the same problem. Editing jboss-5.1.0.GA\server\default\deployers\jbossweb.deployer\META-INF\war-deployers-jboss-beans.xml did not solve the problem.

                      Any other solution available?

                      Here's the content of my file after editing:

                       

                      <?xml version="1.0" encoding="UTF-8"?>
                      <!--
                      Web application deployers
                      $Id: war-deployers-jboss-beans.xml 88877 2009-05-14 15:36:29Z alesj $
                      -->
                      <deployment xmlns="urn:jboss:bean-deployer:2.0">
                         <!-- WAR Structure -->
                         <bean name="WARStructure" class="org.jboss.web.deployers.WARStructure">
                             <property name="webInfLibFilter">
                                <!-- We accept all .jar files in WEB-INF/lib -->
                                <bean name="WebInfLibFilter" class="org.jboss.virtual.plugins.vfs.helpers.SuffixMatchFilter">
                                   <constructor><parameter class="java.lang.String">.jar</parameter></constructor>
                                </bean>
                             </property>
                             <property name="includeWebInfInClasspath">true</property>
                             <property name="contextInfoOrder">1000</property>
                         </bean>
                         <!-- web.xml parsing deployer -->
                         <bean name="WebAppParsingDeployer" class="org.jboss.deployment.WebAppParsingDeployer">
                            <property name="relativeOrder">2000</property>
                         </bean>
                         <bean name="JBossWebAppParsingDeployer" class="org.jboss.deployment.JBossWebAppParsingDeployer">
                            <property name="relativeOrder">2001</property>
                         </bean>
                        <!-- See JBAS-6062 -->
                         <bean name="WebXmlLessDeployer" class="org.jboss.deployment.LegacyWebXmlLessDeployer"/>
                         <!-- Allow for war local class loaders: in testing -->
                         <bean name="WarClassLoaderDeployer" class="org.jboss.web.tomcat.service.deployers.WarClassLoaderDeployer">
                            <property name="relativeOrder">-1</property>
                            <property name="filteredPackages">javax.servlet</property>     
                         </bean>
                             
                         <!--
                              Injects default clustering metadata.       
                              TODO. A better approach is to use a jboss-web.xml equivalent to conf/web.xml
                              and conf/standardjboss.xml as the source for defaults.
                         -->
                         <bean name="WebAppClusteringDefaultsDeployer"
                               class="org.jboss.web.tomcat.service.deployers.ClusteringDefaultsDeployer">
                           
                            <!-- Default session cache config used by distributable webapps -->
                            <property name="cacheName">standard-session-cache</property>
                            <!-- Default session cache config used by FIELD granularity distributable webapps -->     
                            <property name="fieldGranularityCacheName">field-granularity-session-cache</property>
                           
                            <!--
                            The following two properties define when sessions are replicated to
                            the other nodes.
                            The default value, "instant", uses the request thread to replicate changes
                            to the other nodes at the end of requests. In this case, the
                            "SnapshotInterval" property is not used.
                            The "interval" mode uses a background thread that periodically checks for
                            modified sessions and replicates them.  The "SnapshotInterval"
                            property controls how often (in milliseconds) the background thread
                            should run.  
                           
                            Note that this property is not in effect if the replication-granularity
                            is set to FIELD. If it is FIELD, it will be per http request (that is,
                            "instant" mode.)
                            -->
                            <property name="snapshotMode">INSTANT</property>
                            <property name="snapshotInterval">1000</property>
                           
                            <property name="replicationGranularity">SESSION</property>
                            <property name="replicationTrigger">SET_AND_NON_PRIMITIVE_GET</property>
                            <property name="replicationFieldBatchMode">true</property>
                           
                            <!--
                            Whether by default to add special session handling to coordinate use
                            with mod_jk or other JK connector variants.
                            If a JK connector is used, you will need to set the JvmRoute inside
                            JBossWeb, e.g. configure,
                              Engine name="jboss.web" jvmRoute="Node1" defaultHost="localhost"
                            in server.xml.
                           
                            This value can be configured per webapp in the webapp's jboss.xml.
                           
                            If not set, the default will be to add the special session handling
                            if a jvmRoute is configured on the Engine. So, generally the only reason
                            to configure this overall default is to set it to 'false' and thus force
                            per webapp configuration.
                            -->
                            <!--
                            <property name="useJK">false</property>
                           
                            <property name="useSessionPassivation">false</property>
                            <property name="passivationMaxIdleTime">-1</property> 
                            <property name="passivationMinIdleTime">-1</property>
                            -->
                            <!--
                             Determines the maximum interval between requests, in seconds, after
                             which a request will trigger replication of the session's timestamp
                             regardless of whether the request has otherwise made the session dirty. 
                             Such replication ensures that other nodes in the cluster are aware of
                             the most recent value for the session's timestamp and won't incorrectly
                             expire an unreplicated session upon failover. It also results in correct
                             values for HttpSession.getLastAccessedTime() calls following failover.
                             The cost of timestamp replication is considerably lower in JBoss AS 5
                             than it is in earlier versions since replicating a timestamp does not
                             necessitate replicating any other data.
                        
                             A value of 0 means the metadata will be replicated whenever the session is
                             accessed.  A value of -1 means the metadata will be replicated only if some
                             other activity during the request (e.g. modifying an attribute) has
                             resulted in other replication work involving the session. A positive value
                             greater than the HttpSession.getMaxInactiveInterval() value will be treated
                             as a likely misconfiguration and converted to 0; i.e. replicate the
                             metadata on every request.
                            -->
                            <property name="maxUnreplicatedInterval">60</property>
                           
                         </bean>
                         <!-- The WebMetaData to service mbean deployer -->
                         <bean name="WarDeployer" class="org.jboss.web.tomcat.service.deployers.TomcatDeployer">
                            <install bean="ManagedDeploymentCreator" method="addAttachmentType">
                               <parameter>
                                  <value>org.jboss.metadata.web.jboss.JBossWebMetaData</value>
                               </parameter>
                               <parameter>
                                  <value>war</value>
                               </parameter>
                            </install>
                            <uninstall bean="ManagedDeploymentCreator" method="removeAttachmentType">
                               <parameter>
                                  <value>org.jboss.metadata.web.jboss.JBossWebMetaData</value>
                               </parameter>
                            </uninstall>
                            <!-- Inject the MainDeployer for resolving cross deployment refs -->
                            <property name="mainDeployer"><inject bean="MainDeployer" /></property>
                            <property name="relativeOrder">2003</property>
                           
                            <!-- FIXME Get this moved to TomcatService in deploy -->
                            <property name="configFile">
                               <value-factory bean="ServiceBindingManager" method="getResourceBinding">
                                  <parameter>jboss.web:service=WebServer</parameter>
                                  <parameter>${jboss.server.home.url}${/}deploy${/}jbossweb.sar${/}server.xml</parameter>
                               </value-factory>
                            </property>
                           
                            <!-- You can configure a set of authenticators keyed by http-auth method
                            used. This will apply the same set of authenticators across all web
                            applications. You can override the set of authenticators at the web
                            application level by adding <authenticators> element to the respective
                            jboss-web.xml
                            -->     
                            <property name="authenticators">
                               <map class="java.util.Properties" keyClass="java.lang.String" valueClass="java.lang.String">
                                  <entry>
                                     <key>BASIC</key>
                                     <value>org.apache.catalina.authenticator.BasicAuthenticator</value>
                                  </entry>
                                  <entry>
                                     <key>CLIENT-CERT</key>
                                     <value>org.apache.catalina.authenticator.SSLAuthenticator</value>
                                  </entry>
                                  <entry>
                                     <key>DIGEST</key>
                                     <value>org.apache.catalina.authenticator.DigestAuthenticator</value>
                                  </entry>
                                  <entry>
                                     <key>FORM</key>
                                     <value>org.apache.catalina.authenticator.FormAuthenticator</value>
                                  </entry>
                                  <entry>
                                     <key>NONE</key>
                                     <value>org.apache.catalina.authenticator.NonLoginAuthenticator</value>
                                  </entry>
                               </map>        
                            </property>
                           
                            <!-- The JAAS security domain to use in the absense of an explicit
                            security-domain specification in the war WEB-INF/jboss-web.xml
                            -->
                            <property name="defaultSecurityDomain">java:/jaas/jboss-web-policy</property>
                            <!-- Get the flag indicating if the normal Java2 parent first class
                                 loading model should be used over the servlet 2.3 web container first
                                 model.
                            -->
                            <property name="java2ClassLoadingCompliance">false</property>
                            <!-- This is NO LONGER supported this way and it will be completely removed for 6.x.
                                 See JBAS-6914 for how you can achieve the same in 5.x with new MC JBossCL layer.
                                 A flag indicating if the JBoss Loader should be used. This loader
                                 uses a unified class loader as the class loader rather than the tomcat
                                 specific class loader.
                                 The default is false to ensure that wars have isolated class loading
                                 for duplicate jars and jsp files.
                            <property name="useJBossWebLoader">false</property>
                            -->
                            <!-- The list of package prefixes that should not be loaded without
                               delegating to the parent class loader before trying the web app
                               class loader. The packages listed here are those tha are used by
                               the web container implementation and cannot be overriden. The format
                               is a comma separated list of the package names. There cannot be any
                               whitespace between the package prefixes.
                               This setting only applies when UseJBossWebLoader=false.
                            -->
                            <property name="filteredPackages">javax.servlet</property>
                            <property name="lenientEjbLink">true</property>
                            <!--Flag to delete the Work Dir on Context Destroy -->
                            <property name="deleteWorkDirOnContextDestroy">false</property>
                            <!--
                                Class of the session manager (used if context is marked as 'distributable'. Currently allowed values:
                                - org.jboss.web.tomcat.service.session.JBossCacheManager
                            -->
                            <property name="managerClass">org.jboss.web.tomcat.service.session.JBossCacheManager</property>
                            <!-- The name of the request property under with the authenticated JAAS
                            Subject is stored on successful authentication. If null or empty then
                            the Subject will not be stored.
                            -->
                            <!--
                            <property name="subjectAttributeName">j_subject</property>
                            -->
                            <!-- The SessionIdAlphabet is the set of characters used to create a session Id
                                 It must be made up of exactly 65 unique characters
                            <property name="sessionIdAlphabet">ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-_</property>
                            -->
                           
                            <property name="domain">jboss.web</property>
                             <!--  Specify a Bean for JBoss Security PolicyRegistration -->
                             <property name="policyRegistrationName">JBossSecurityPolicyRegistration</property>
                            
                             <!-- Specify a SecurityManagement Wrapper -->
                             <property name="securityManagementName">JNDIBasedSecurityManagement</property>
                             <!-- Specify a SecurityContext FQN class name -->
                             <property name="securityContextClassName">org.jboss.security.plugins.JBossSecurityContext</property>
                         </bean>
                        
                         <bean name="MergedJBossWebMetaDataDeployer"
                                class="org.jboss.web.deployers.MergedJBossWebMetaDataDeployer">
                         </bean>
                      </deployment>

                      <?xml version="1.0" encoding="UTF-8"?>

                       

                      <!--

                      Web application deployers

                      $Id: war-deployers-jboss-beans.xml 88877 2009-05-14 15:36:29Z alesj $

                      -->

                      <deployment xmlns="urn:jboss:bean-deployer:2.0">

                       

                         <!-- WAR Structure -->

                         <bean name="WARStructure" class="org.jboss.web.deployers.WARStructure">

                             <property name="webInfLibFilter">

                                <!-- We accept all .jar files in WEB-INF/lib -->

                                <bean name="WebInfLibFilter" class="org.jboss.virtual.plugins.vfs.helpers.SuffixMatchFilter">

                                   <constructor><parameter class="java.lang.String">.jar</parameter></constructor>

                                </bean>

                             </property>

                             <property name="includeWebInfInClasspath">true</property>

                             <property name="contextInfoOrder">1000</property>

                         </bean>

                       

                         <!-- web.xml parsing deployer -->

                         <bean name="WebAppParsingDeployer" class="org.jboss.deployment.WebAppParsingDeployer">

                            <property name="relativeOrder">2000</property>

                         </bean>

                         <bean name="JBossWebAppParsingDeployer" class="org.jboss.deployment.JBossWebAppParsingDeployer">

                            <property name="relativeOrder">2001</property>

                         </bean>

                       

                        <!-- See JBAS-6062 -->

                         <bean name="WebXmlLessDeployer" class="org.jboss.deployment.LegacyWebXmlLessDeployer"/>

                       

                         <!-- Allow for war local class loaders: in testing -->

                         <bean name="WarClassLoaderDeployer" class="org.jboss.web.tomcat.service.deployers.WarClassLoaderDeployer">

                            <property name="relativeOrder">-1</property>

                            <property name="filteredPackages">javax.servlet</property>     

                         </bean>

                       

                         <!--

                              Injects default clustering metadata.       

                              TODO. A better approach is to use a jboss-web.xml equivalent to conf/web.xml

                              and conf/standardjboss.xml as the source for defaults.

                         -->

                         <bean name="WebAppClusteringDefaultsDeployer"

                               class="org.jboss.web.tomcat.service.deployers.ClusteringDefaultsDeployer">

                       

                            <!-- Default session cache config used by distributable webapps -->

                            <property name="cacheName">standard-session-cache</property>

                            <!-- Default session cache config used by FIELD granularity distributable webapps -->     

                            <property name="fieldGranularityCacheName">field-granularity-session-cache</property>

                       

                            <!--

                            The following two properties define when sessions are replicated to

                            the other nodes.

                            The default value, "instant", uses the request thread to replicate changes

                            to the other nodes at the end of requests. In this case, the

                            "SnapshotInterval" property is not used.

                            The "interval" mode uses a background thread that periodically checks for

                            modified sessions and replicates them.  The "SnapshotInterval"

                            property controls how often (in milliseconds) the background thread

                            should run.  

                       

                            Note that this property is not in effect if the replication-granularity

                            is set to FIELD. If it is FIELD, it will be per http request (that is,

                            "instant" mode.)

                            -->

                            <property name="snapshotMode">INSTANT</property>

                            <property name="snapshotInterval">1000</property>

                       

                            <property name="replicationGranularity">SESSION</property>

                            <property name="replicationTrigger">SET_AND_NON_PRIMITIVE_GET</property>

                            <property name="replicationFieldBatchMode">true</property>

                       

                            <!--

                            Whether by default to add special session handling to coordinate use

                            with mod_jk or other JK connector variants.

                            If a JK connector is used, you will need to set the JvmRoute inside

                            JBossWeb, e.g. configure,

                              Engine name="jboss.web" jvmRoute="Node1" defaultHost="localhost"

                            in server.xml.

                       

                            This value can be configured per webapp in the webapp's jboss.xml.

                       

                            If not set, the default will be to add the special session handling

                            if a jvmRoute is configured on the Engine. So, generally the only reason

                            to configure this overall default is to set it to 'false' and thus force

                            per webapp configuration.

                            -->

                            <!--

                            <property name="useJK">false</property>

                       

                            <property name="useSessionPassivation">false</property>

                            <property name="passivationMaxIdleTime">-1</property> 

                            <property name="passivationMinIdleTime">-1</property>

                            -->

                       

                            <!--

                             Determines the maximum interval between requests, in seconds, after

                             which a request will trigger replication of the session's timestamp

                             regardless of whether the request has otherwise made the session dirty. 

                             Such replication ensures that other nodes in the cluster are aware of

                             the most recent value for the session's timestamp and won't incorrectly

                             expire an unreplicated session upon failover. It also results in correct

                             values for HttpSession.getLastAccessedTime() calls following failover.

                       

                             The cost of timestamp replication is considerably lower in JBoss AS 5

                             than it is in earlier versions since replicating a timestamp does not

                             necessitate replicating any other data.

                       

                             A value of 0 means the metadata will be replicated whenever the session is

                             accessed.  A value of -1 means the metadata will be replicated only if some

                             other activity during the request (e.g. modifying an attribute) has

                             resulted in other replication work involving the session. A positive value

                             greater than the HttpSession.getMaxInactiveInterval() value will be treated

                             as a likely misconfiguration and converted to 0; i.e. replicate the

                             metadata on every request.

                            -->

                            <property name="maxUnreplicatedInterval">60</property>

                       

                         </bean>

                       

                         <!-- The WebMetaData to service mbean deployer -->

                         <bean name="WarDeployer" class="org.jboss.web.tomcat.service.deployers.TomcatDeployer">

                            <install bean="ManagedDeploymentCreator" method="addAttachmentType">

                               <parameter>

                                  <value>org.jboss.metadata.web.jboss.JBossWebMetaData</value>

                               </parameter>

                               <parameter>

                                  <value>war</value>

                               </parameter>

                            </install>

                            <uninstall bean="ManagedDeploymentCreator" method="removeAttachmentType">

                               <parameter>

                                  <value>org.jboss.metadata.web.jboss.JBossWebMetaData</value>

                               </parameter>

                            </uninstall>

                       

                            <!-- Inject the MainDeployer for resolving cross deployment refs -->

                            <property name="mainDeployer"><inject bean="MainDeployer" /></property>

                       

                            <property name="relativeOrder">2003</property>

                       

                            <!-- FIXME Get this moved to TomcatService in deploy -->

                            <property name="configFile">

                               <value-factory bean="ServiceBindingManager" method="getResourceBinding">

                                  <parameter>jboss.web:service=WebServer</parameter>

                                  <parameter>${jboss.server.home.url}${/}deploy${/}jbossweb.sar${/}server.xml</parameter>

                               </value-factory>

                            </property>

                       

                            <!-- You can configure a set of authenticators keyed by http-auth method

                            used. This will apply the same set of authenticators across all web

                            applications. You can override the set of authenticators at the web

                            application level by adding <authenticators> element to the respective

                            jboss-web.xml

                            -->     

                            <property name="authenticators">

                               <map class="java.util.Properties" keyClass="java.lang.String" valueClass="java.lang.String">

                                  <entry>

                                     <key>BASIC</key>

                                     <value>org.apache.catalina.authenticator.BasicAuthenticator</value>

                                  </entry>

                                  <entry>

                                     <key>CLIENT-CERT</key>

                                     <value>org.apache.catalina.authenticator.SSLAuthenticator</value>

                                  </entry>

                                  <entry>

                                     <key>DIGEST</key>

                                     <value>org.apache.catalina.authenticator.DigestAuthenticator</value>

                                  </entry>

                                  <entry>

                                     <key>FORM</key>

                                     <value>org.apache.catalina.authenticator.FormAuthenticator</value>

                                  </entry>

                                  <entry>

                                     <key>NONE</key>

                                     <value>org.apache.catalina.authenticator.NonLoginAuthenticator</value>

                                  </entry>

                               </map>        

                            </property>

                       

                            <!-- The JAAS security domain to use in the absense of an explicit

                            security-domain specification in the war WEB-INF/jboss-web.xml

                            -->

                            <property name="defaultSecurityDomain">java:/jaas/jboss-web-policy</property>

                       

                            <!-- Get the flag indicating if the normal Java2 parent first class

                                 loading model should be used over the servlet 2.3 web container first

                                 model.

                            -->

                            <property name="java2ClassLoadingCompliance">false</property>

                       

                            <!-- This is NO LONGER supported this way and it will be completely removed for 6.x.

                                 See JBAS-6914 for how you can achieve the same in 5.x with new MC JBossCL layer.

                       

                                 A flag indicating if the JBoss Loader should be used. This loader

                                 uses a unified class loader as the class loader rather than the tomcat

                                 specific class loader.

                                 The default is false to ensure that wars have isolated class loading

                                 for duplicate jars and jsp files.

                            <property name="useJBossWebLoader">false</property>

                            -->

                       

                            <!-- The list of package prefixes that should not be loaded without

                               delegating to the parent class loader before trying the web app

                               class loader. The packages listed here are those tha are used by

                               the web container implementation and cannot be overriden. The format

                               is a comma separated list of the package names. There cannot be any

                               whitespace between the package prefixes.

                               This setting only applies when UseJBossWebLoader=false.

                            -->

                            <property name="filteredPackages">javax.servlet</property>

                       

                            <property name="lenientEjbLink">true</property>

                       

                            <!--Flag to delete the Work Dir on Context Destroy -->

                            <property name="deleteWorkDirOnContextDestroy">false</property>

                       

                            <!--

                                Class of the session manager (used if context is marked as 'distributable'. Currently allowed values:

                                - org.jboss.web.tomcat.service.session.JBossCacheManager

                            -->

                            <property name="managerClass">org.jboss.web.tomcat.service.session.JBossCacheManager</property>

                       

                            <!-- The name of the request property under with the authenticated JAAS

                            Subject is stored on successful authentication. If null or empty then

                            the Subject will not be stored.

                            -->

                            <!--

                            <property name="subjectAttributeName">j_subject</property>

                            -->

                       

                            <!-- The SessionIdAlphabet is the set of characters used to create a session Id

                                 It must be made up of exactly 65 unique characters

                            <property name="sessionIdAlphabet">ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-_</property>

                            -->

                       

                            <property name="domain">jboss.web</property>

                             <!--  Specify a Bean for JBoss Security PolicyRegistration -->

                             <property name="policyRegistrationName">JBossSecurityPolicyRegistration</property>

                       

                             <!-- Specify a SecurityManagement Wrapper -->

                             <property name="securityManagementName">JNDIBasedSecurityManagement</property>

                       

                             <!-- Specify a SecurityContext FQN class name -->

                             <property name="securityContextClassName">org.jboss.security.plugins.JBossSecurityContext</property>

                         </bean>

                       

                         <bean name="MergedJBossWebMetaDataDeployer"

                                class="org.jboss.web.deployers.MergedJBossWebMetaDataDeployer">

                         </bean>

                       

                      </deployment>

                      • 8. Re: User-specified log class 'org.apache.commons.logging.impl.Lo
                        digit.elektra

                        For what it's worth, just had the same issue on a JBoss 5.1GA.

                        I added a file jboss-classloading.xml under the folder WEB-INF of my war file with the contents:

                         

                        <?xml version="1.0" encoding="UTF-8"?>

                        <classloading xmlns="urn:jboss:classloading:1.0"

                              name="test.war"

                              domain="test_domain"

                              export-all="NON_EMPTY"

                              import-all="true">

                        </classloading>

                         

                        Then it worked.

                        The filteredPackages did not work for me either.

                         

                        Regards,

                         

                        Digit