1 Reply Latest reply on Mar 5, 2004 8:42 AM by cduncan

    commons-logging class implentation exception on Jboss 3.2.3

    ijonas

      Hi,

      I've deployed a EJB/Webservice app into my JBoss 3.2.3 app server. Jboss is started with "run -c all" and deploys all services happily. When I try to access the ?wsdl URL of the web service I get the following class loading exception:

      -------------------------------------------------------------------------------
      09:26:34,765 ERROR [Engine] StandardWrapperValve[JBossAxisServlet]: Servlet.service() for servlet JBossAxisServlet threw
      exception
      javax.servlet.ServletException: Servlet execution threw an exception
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
      at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
      at org.jboss.web.tomcat.security.JBossSecurityMgrRealm.invoke(JBossSecurityMgrRealm.java:220)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:553)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
      at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
      at org.jboss.web.tomcat.tc4.statistics.ContainerStatsValve.invoke(ContainerStatsValve.java:76)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
      at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
      at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2417)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
      at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
      at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:65)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
      at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:577)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
      at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
      at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
      at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:197)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:781)
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:549)
      at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:605)
      at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:677)
      at java.lang.Thread.run(Thread.java:534)
      09:26:34,775 ERROR [Engine] ----- Root Cause -----
      java.lang.ExceptionInInitializerError
      at java.lang.Class.forName0(Native Method)
      at java.lang.Class.forName(Class.java:219)
      at org.apache.axis.utils.ClassUtils$2.run(ClassUtils.java:187)
      at java.security.AccessController.doPrivileged(Native Method)
      at org.apache.axis.utils.ClassUtils.loadClass(ClassUtils.java:171)
      at org.apache.axis.utils.ClassUtils.forName(ClassUtils.java:112)
      at org.apache.axis.deployment.wsdd.providers.WSDDHandlerProvider.newProviderInstance(WSDDHandlerProvider.java:88
      )
      at org.jboss.net.axis.ServiceClassLoaderAwareWSDDHandlerProvider.newProviderInstance(ServiceClassLoaderAwareWSDD
      HandlerProvider.java:40)
      at org.apache.axis.deployment.wsdd.WSDDProvider.getInstance(WSDDProvider.java:209)
      at org.apache.axis.deployment.wsdd.WSDDService.makeNewInstance(WSDDService.java:446)
      at org.apache.axis.deployment.wsdd.WSDDDeployableItem.getNewInstance(WSDDDeployableItem.java:310)
      at org.apache.axis.deployment.wsdd.WSDDDeployableItem.getInstance(WSDDDeployableItem.java:296)
      at org.apache.axis.deployment.wsdd.WSDDDeployment.getService(WSDDDeployment.java:485)
      at org.jboss.net.axis.Deployment.getService(Deployment.java:269)
      at org.apache.axis.configuration.FileProvider.getService(FileProvider.java:261)
      at org.apache.axis.AxisEngine.getService(AxisEngine.java:274)
      at org.apache.axis.MessageContext.setTargetService(MessageContext.java:695)
      at org.apache.axis.handlers.http.URLMapper.invoke(URLMapper.java:87)
      at org.apache.axis.handlers.http.URLMapper.generateWSDL(URLMapper.java:95)
      at org.apache.axis.strategies.WSDLGenStrategy.visit(WSDLGenStrategy.java:72)
      at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:150)
      at org.apache.axis.SimpleChain.generateWSDL(SimpleChain.java:137)
      at org.apache.axis.server.AxisServer.generateWSDL(AxisServer.java:463)
      at org.apache.axis.transport.http.AxisServlet.processWsdlRequest(AxisServlet.java:484)
      at org.apache.axis.transport.http.AxisServlet.doGet(AxisServlet.java:285)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
      at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:339)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
      at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
      at org.jboss.web.tomcat.security.JBossSecurityMgrRealm.invoke(JBossSecurityMgrRealm.java:220)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:553)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
      at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
      at org.jboss.web.tomcat.tc4.statistics.ContainerStatsValve.invoke(ContainerStatsValve.java:76)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
      at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
      at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2417)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
      at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
      at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:65)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
      at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:577)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
      at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
      at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
      at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
      at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:197)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:781)
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:549)
      at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:605)
      at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:677)
      at java.lang.Thread.run(Thread.java:534)
      Caused by: org.apache.commons.logging.LogConfigurationException: org.apache.commons.logging.LogConfigurationException: o
      rg.apache.commons.logging.LogConfigurationException: Class org.apache.commons.logging.impl.Log4JLogger does not implemen
      t Log
      at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:532)
      at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:272)
      at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:414)
      at org.apache.axis.components.logger.LogFactory.getLog(LogFactory.java:76)
      at org.apache.axis.providers.BasicProvider.(BasicProvider.java:87)
      ... 69 more
      Caused by: org.apache.commons.logging.LogConfigurationException: org.apache.commons.logging.LogConfigurationException: C
      lass org.apache.commons.logging.impl.Log4JLogger does not implement Log
      at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:416)
      at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:525)
      ... 73 more
      Caused by: org.apache.commons.logging.LogConfigurationException: Class org.apache.commons.logging.impl.Log4JLogger does
      not implement Log
      at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:412)
      ... 74 more

      ----------------------------------------------------------------------------------
      I've triec replacing all instances of commons-logging.jar with the latest (7-Apr-2003/version 1.0.3) from the Jakarta website, but alas to no avail.

      My WSR file contains:

      /META-INF/web-service.xml
      /mypackage/*.class

      The web-service.xml file looks like this:

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

      <!-- -->
      <!-- This JBoss.Net Web Service Descriptor has been generated by XDoclet -->
      <!-- and is brought to you by F. M. Brier, C. G. Jung and J. Essington -->
      <!-- -->

      <deployment
      name="v2webservice"
      xmlns="http://xml.apache.org/axis/wsdd/"
      targetNamespace="http://www.vamosa.com/v2exploration"
      xmlns:v2="http://www.vamosa.com/v2exploration"
      xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">

      <!-- The following are declarations of service endpoints targetted to
      session beans -->











      <!-- The following are typemappings for entity beans for implementing
      the implicit web-service value-object pattern -->

      <!-- The following are beanMappings for bean-type value-objects -->

      <beanMapping
      qname="ns:SubProject"
      xmlns:ns="vamosa.dao"
      languageSpecificType="java:vamosa.dao.SubProject"/>

      <beanMapping
      qname="ns:Programme"
      xmlns:ns="vamosa.dao"
      languageSpecificType="java:vamosa.dao.Programme"/>

      <beanMapping
      qname="ns:Project"
      xmlns:ns="vamosa.dao"
      languageSpecificType="java:vamosa.dao.Project"/>

      <!-- The following are typemappings for bean-type value-objects -->
      <!--







      -->

      <!-- There follow merged custom web service descriptions -->





      Does anyone have any ideas or suggestions ?

      Thanks,
      Ijonas Kisselbach.