7 Replies Latest reply: Jun 12, 2008 12:34 PM by Andrew Redhead RSS

jbossws-metro-dist-3.0.1.GA missing SunRIConsumerFactoryImpl

Andrew Redhead Newbie

Hi,

I'm trying to run the wsconsume ant task against the jbossws 3.0.1 metro 1.0.1 GA distribution.

The build fails with:

Failed to load: org.jboss.ws.tools.jaxws.impl.SunRIConsumerFactoryImpl

It looks like the jbossws 3.0.1 metro 1.0.1 GA distribution does not include SunRIConsumerFactoryImpl, however the 3.0.1 native distribution does include it in the jars:

jbossws-client.jar
jbossws-core.jar

Is there a "good" ;) reason why these jars (or more specifically the SunRIConsumerFactoryImpl class) was not included with the metro distribution?

Can I "safely" use the jboss-ws client/core jars from the native distribution in conjunction with the metro distribution?

I started off using the native 2.0.1 dist but I'm running a ws client in jboss 4.3 talking to a ws service running in an "esb" that refuses to accept "Transfer-Encoding: chunked" and I ran into the issues described:

http://www.jboss.com/index.html?module=bb&op=viewtopic&t=129235

Reading the jira item:

http://jira.jboss.org/jira/browse/JBWS-2124

It seems that a fix that allows the native stack not to use chunked encoding at all :) however it will be released in 3.0.2...

Cheers,

Andy

  • 1. Re: jbossws-metro-dist-3.0.1.GA missing SunRIConsumerFactory
    Andrew Redhead Newbie

    Looks like policy.jar is also missing... ?

  • 2. Re: jbossws-metro-dist-3.0.1.GA missing SunRIConsumerFactory
    Richard Opalka Master

     

    "andyredhead" wrote:

    The build fails with:

    Failed to load: org.jboss.ws.tools.jaxws.impl.SunRIConsumerFactoryImpl

    It looks like the jbossws 3.0.1 metro 1.0.1 GA distribution does not include SunRIConsumerFactoryImpl

    It was renamed to org.jboss.wsf.stack.metro.tools.MetroConsumerFactoryImpl and it is in archive jbossws-metro-client.jar

  • 3. Re: jbossws-metro-dist-3.0.1.GA missing SunRIConsumerFactory
    Andrew Redhead Newbie

    Ahh, that makes sense.

    Changing my classpath to include the correct jbossws-metro-client rather than the jbossws-client makes the wsdl to java ant task run fine, thank you :)

    Now I have a problem in runtime...

    The stack trace is:

    Caused by: java.lang.IllegalStateException: Failed to load javax.xml.ws.spi.Provider: org.jboss.ws.core.jaxws.spi.ProviderImpl
     at javax.xml.ws.spi.ProviderLoader.loadProvider(ProviderLoader.java:96)
     at javax.xml.ws.spi.Provider.provider(Provider.java:90)
     ... 89 more
    Caused by: java.lang.ClassNotFoundException: No ClassLoaders found for: org.jboss.ws.core.jaxws.spi.ProviderImpl
     at org.jboss.mx.loading.LoadMgr3.beginLoadTask(LoadMgr3.java:306)
     at org.jboss.mx.loading.RepositoryClassLoader.loadClassImpl(RepositoryClassLoader.java:514)
     at org.jboss.mx.loading.RepositoryClassLoader.loadClass(RepositoryClassLoader.java:408)
     at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
     at javax.xml.ws.spi.ProviderLoader.loadProvider(ProviderLoader.java:90)
     ... 90 more


    org.jboss.ws.core.jaxws.spi.ProviderImpl is available in native jbossws-core and jbossws-client but not in any of the metro jars (I'm ignoring jaxws-rt.jar, if I include that then I get all sorts of errors about illegal endpoints...).

    At runtime (for a web service client), should I be including jbossws-core or should some part of the metro distribution include org.jboss.ws.core.jaxws.spi.ProviderImpl?

    Cheers,

    Andy

  • 4. Re: jbossws-metro-dist-3.0.1.GA missing SunRIConsumerFactory
    Richard Opalka Master

    It seems to me you're mixing two different integrations.
    This is wrong approach. How did you install metro integration?

  • 5. Re: jbossws-metro-dist-3.0.1.GA missing SunRIConsumerFactory
    Andrew Redhead Newbie

    Point taken, so I've done a clean install into jboss 4.3 using the ant deploy script.

    Now I get:

    Caused by: java.lang.IllegalStateException: Failed to load javax.xml.soap.MetaFactory: org.jboss.ws.core.soap.SAAJMetaFactoryImpl
     at javax.xml.soap.SAAJFactoryLoader.loadFactory(SAAJFactoryLoader.java:131)
     at javax.xml.soap.SAAJMetaFactory.getInstance(SAAJMetaFactory.java:60)
     at javax.xml.soap.MessageFactory.newInstance(MessageFactory.java:106)
     at com.sun.xml.ws.api.SOAPVersion.<init>(SOAPVersion.java:178)
     at com.sun.xml.ws.api.SOAPVersion.<clinit>(SOAPVersion.java:83)
     ... 97 more
    Caused by: java.lang.ClassNotFoundException: No ClassLoaders found for: org.jboss.ws.core.soap.SAAJMetaFactoryImpl
     at org.jboss.mx.loading.LoadMgr3.beginLoadTask(LoadMgr3.java:306)
     at org.jboss.mx.loading.RepositoryClassLoader.loadClassImpl(RepositoryClassLoader.java:514)
     at org.jboss.mx.loading.RepositoryClassLoader.loadClass(RepositoryClassLoader.java:408)
     at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
     at javax.xml.soap.SAAJFactoryLoader.loadFactory(SAAJFactoryLoader.java:125)



    The same jboss appserver instance could be both a web serive server and a web service client and I'm trying to avoid the java xml equiavalent of "dll hell".

    The web service client is running inside a jboss mbean - which is why I was initally trying to locate the jars I need without doing a full install. Now I have done a full install I suspect the class loading issues are because the mbean can't access the jars packaged in the jbossws service...

  • 6. Re: jbossws-metro-dist-3.0.1.GA missing SunRIConsumerFactory
    Richard Opalka Master

     

    "andyredhead" wrote:

    The web service client is running inside a jboss mbean - which is why I was initally trying to locate the jars I need without doing a full install. Now I have done a full install I suspect the class loading issues are because the mbean can't access the jars packaged in the jbossws service...

    This is question you should ask on different JBoss forums, e.g. here or here.