JOSSO

JOSSO Tomcat incompatibility with Apache OpenEJB / CXF 2.x

Details

  • Type: Bug Bug
  • Status: Open Open
  • Priority: Critical Critical
  • Resolution: Unresolved
  • Affects Version/s: JOSSO 1.8, JOSSO 1.8.1, JOSSO 1.8.2
  • Fix Version/s: None
  • Component/s: Tomcat 6.0 Agent
  • Description:
    Hide
    Hello,

    we are using Tomcat (6.0.20) with Apache OpenEJB Container (3.1.2) and facing problems deploying webservice applications using Apache CXF 2.x (2.0.9 or 2.2.2).
    Actual OpenEJB itself comes with Apache CXF 2.0.9.
    Deploying the webapp under Tomcat+JOSSO or Tomcat+OpenEJB is no problem, but Tomcat+JOSSO+OpenEJB does not work.
    The webapps are deployed under control of OpenEJB and the problem seem to be common Axis 1.4 libraries JOSSO
    is installing in Tomcat's lib folder:
    axis-jaxrpc-1.4.jar
    axis-wsdl4j-1.5.1.jar
    I think the critical fact is the JAX-RPC 1.1 Axis 1.4 and JOSSO needs while CXF uses JAX-WS 2.0. Both in coexistance bringing up deployment errors.
    What I saw is that axis-wsdl4j-1.5.1.jar does not match wsdl4j-1.6.1.jar coming with OpenEJB, and axis-jaxrpc-1.4.jar does not match javaee-api-5.0-2.jar of OpenEJB.

    Related to to this problems I have some other questions:
    Can JOSSO be run with CXF instead of Axis 1.4?
    Axis 1.4 is rather old and I don't like to see it in Tomcats common libs. IMHO Axis 1.4 is contemporary and hinders future development of JOSSO.
    Do you have any known issues on the compatibility of JOSSO with Apache OpenEJB?

    thanks for any help,
    Martin
    Show
    Hello, we are using Tomcat (6.0.20) with Apache OpenEJB Container (3.1.2) and facing problems deploying webservice applications using Apache CXF 2.x (2.0.9 or 2.2.2). Actual OpenEJB itself comes with Apache CXF 2.0.9. Deploying the webapp under Tomcat+JOSSO or Tomcat+OpenEJB is no problem, but Tomcat+JOSSO+OpenEJB does not work. The webapps are deployed under control of OpenEJB and the problem seem to be common Axis 1.4 libraries JOSSO is installing in Tomcat's lib folder: axis-jaxrpc-1.4.jar axis-wsdl4j-1.5.1.jar I think the critical fact is the JAX-RPC 1.1 Axis 1.4 and JOSSO needs while CXF uses JAX-WS 2.0. Both in coexistance bringing up deployment errors. What I saw is that axis-wsdl4j-1.5.1.jar does not match wsdl4j-1.6.1.jar coming with OpenEJB, and axis-jaxrpc-1.4.jar does not match javaee-api-5.0-2.jar of OpenEJB. Related to to this problems I have some other questions: Can JOSSO be run with CXF instead of Axis 1.4? Axis 1.4 is rather old and I don't like to see it in Tomcats common libs. IMHO Axis 1.4 is contemporary and hinders future development of JOSSO. Do you have any known issues on the compatibility of JOSSO with Apache OpenEJB? thanks for any help, Martin
  • Environment:
    Java 6 (Update 16) on Tomcat 6.0.20 with OpenEJB 3.1.2

Activity

Hide
Martin Buch added a comment - 16/Nov/09 7:16 AM
Hello,

I can provide some additional information.

Now I've found that when replacing axis-wsdl4j-1.5.1.jar by wsdl4j-1.6.1.jar and removing axis-ant-1.4.jar from Tomcat's lib dir, then
the deployment works without error.

With axis-ant-1.4.jar I get following errors during deployment:

- Error deploying CXF webservice for servlet ...
java.lang.NullPointerException
at java.io.FilterInputStream.close(FilterInputStream.java:155)
at sun.net.www.protocol.jar.JarURLConnection$JarURLInputStream.close(JarURLConnection.java:90)
at org.apache.cxf.resource.ExtendedURIResolver.close(ExtendedURIResolver.java:75)
at org.apache.cxf.catalog.CatalogWSDLLocator.close(CatalogWSDLLocator.java:122)
at org.apache.cxf.wsdl11.ResourceManagerWSDLLocator.close(ResourceManagerWSDLLocator.java:68)
at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source)
at org.apache.cxf.wsdl11.WSDLManagerImpl.loadDefinition(WSDLManagerImpl.java:211)
at org.apache.cxf.wsdl11.WSDLManagerImpl.getDefinition(WSDLManagerImpl.java:176)
at org.apache.cxf.wsdl11.WSDLServiceFactory.<init>(WSDLServiceFactory.java:81)
at org.apache.cxf.service.factory.ReflectionServiceFactoryBean.buildServiceFromWSDL(ReflectionServiceFactoryBean.java:285)
at org.apache.cxf.service.factory.ReflectionServiceFactoryBean.initializeServiceModel(ReflectionServiceFactoryBean.java:381)
at org.apache.cxf.service.factory.ReflectionServiceFactoryBean.create(ReflectionServiceFactoryBean.java:169)
at org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.create(JaxWsServiceFactoryBean.java:98)
at org.apache.openejb.server.cxf.pojo.PojoEndpoint.<init>(PojoEndpoint.java:53)
at org.apache.openejb.server.cxf.pojo.PojoWsContainer.createEndpoint(PojoWsContainer.java:38)
at org.apache.openejb.server.cxf.pojo.PojoWsContainer.createEndpoint(PojoWsContainer.java:26)
at org.apache.openejb.server.cxf.CxfWsContainer.start(CxfWsContainer.java:70)
at org.apache.openejb.server.cxf.pojo.PojoWsContainer.start(PojoWsContainer.java:43)
at org.apache.openejb.server.cxf.CxfService.createPojoWsContainer(CxfService.java:69)
at org.apache.openejb.server.webservices.WsService.afterApplicationCreated(WsService.java:310)
at org.apache.openejb.tomcat.catalina.TomcatWebAppBuilder.afterStart(TomcatWebAppBuilder.java:303)
at org.apache.openejb.tomcat.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:60)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4424)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:526)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:850)
at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:724)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:493)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1206)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:314)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:722)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:516)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:583)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)

Hence there must be something that axis-ant-1.4.jar is doing during deployment here which I think is rather crazy because
what should Axis Ant tasks do at runtime? I thought they are made for build management.
The question is, why axis-ant-1.4.jar is needed for JOSSO?

From my point of view the bug can be reduced to prio "major" then.

Martin
Show
Martin Buch added a comment - 16/Nov/09 7:16 AM Hello, I can provide some additional information. Now I've found that when replacing axis-wsdl4j-1.5.1.jar by wsdl4j-1.6.1.jar and removing axis-ant-1.4.jar from Tomcat's lib dir, then the deployment works without error. With axis-ant-1.4.jar I get following errors during deployment: - Error deploying CXF webservice for servlet ... java.lang.NullPointerException at java.io.FilterInputStream.close(FilterInputStream.java:155) at sun.net.www.protocol.jar.JarURLConnection$JarURLInputStream.close(JarURLConnection.java:90) at org.apache.cxf.resource.ExtendedURIResolver.close(ExtendedURIResolver.java:75) at org.apache.cxf.catalog.CatalogWSDLLocator.close(CatalogWSDLLocator.java:122) at org.apache.cxf.wsdl11.ResourceManagerWSDLLocator.close(ResourceManagerWSDLLocator.java:68) at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source) at org.apache.cxf.wsdl11.WSDLManagerImpl.loadDefinition(WSDLManagerImpl.java:211) at org.apache.cxf.wsdl11.WSDLManagerImpl.getDefinition(WSDLManagerImpl.java:176) at org.apache.cxf.wsdl11.WSDLServiceFactory.<init>(WSDLServiceFactory.java:81) at org.apache.cxf.service.factory.ReflectionServiceFactoryBean.buildServiceFromWSDL(ReflectionServiceFactoryBean.java:285) at org.apache.cxf.service.factory.ReflectionServiceFactoryBean.initializeServiceModel(ReflectionServiceFactoryBean.java:381) at org.apache.cxf.service.factory.ReflectionServiceFactoryBean.create(ReflectionServiceFactoryBean.java:169) at org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.create(JaxWsServiceFactoryBean.java:98) at org.apache.openejb.server.cxf.pojo.PojoEndpoint.<init>(PojoEndpoint.java:53) at org.apache.openejb.server.cxf.pojo.PojoWsContainer.createEndpoint(PojoWsContainer.java:38) at org.apache.openejb.server.cxf.pojo.PojoWsContainer.createEndpoint(PojoWsContainer.java:26) at org.apache.openejb.server.cxf.CxfWsContainer.start(CxfWsContainer.java:70) at org.apache.openejb.server.cxf.pojo.PojoWsContainer.start(PojoWsContainer.java:43) at org.apache.openejb.server.cxf.CxfService.createPojoWsContainer(CxfService.java:69) at org.apache.openejb.server.webservices.WsService.afterApplicationCreated(WsService.java:310) at org.apache.openejb.tomcat.catalina.TomcatWebAppBuilder.afterStart(TomcatWebAppBuilder.java:303) at org.apache.openejb.tomcat.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:60) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4424) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:526) at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:850) at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:724) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:493) at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1206) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:314) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) at org.apache.catalina.core.StandardHost.start(StandardHost.java:722) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) at org.apache.catalina.core.StandardService.start(StandardService.java:516) at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) at org.apache.catalina.startup.Catalina.start(Catalina.java:583) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) Hence there must be something that axis-ant-1.4.jar is doing during deployment here which I think is rather crazy because what should Axis Ant tasks do at runtime? I thought they are made for build management. The question is, why axis-ant-1.4.jar is needed for JOSSO? From my point of view the bug can be reduced to prio "major" then. Martin
Hide
Sebastian Gonzalez Oyuela added a comment - 21/Dec/09 6:45 AM
Once you removed this files, were you able to make JOSSO and OpenEJB work after deployment ?
Show
Sebastian Gonzalez Oyuela added a comment - 21/Dec/09 6:45 AM Once you removed this files, were you able to make JOSSO and OpenEJB work after deployment ?

People

Dates

  • Created:
    16/Nov/09 6:08 AM
    Updated:
    21/Dec/09 6:45 AM