[jboss-user] [JBoss Web Services] - Re: jboss6 final and jbossws 3.4.0

Alessio Soldano do-not-reply at jboss.com
Tue Jan 4 10:20:22 EST 2011

Alessio Soldano [http://community.jboss.org/people/alessio.soldano%40jboss.com] created the discussion

"Re: jboss6 final and jbossws 3.4.0"

To view the discussion, visit: http://community.jboss.org/message/578731#578731

> Antoine Brun wrote:
> Hello,
> I'm currently trying to migrate our application from jboss5 to jboss6 and I'm running into some issues.
> My first try was with jboss6 CR1:
> We have some web services (EJB3 endpoints) and they all have @HandlerChain declaration (we use this to do the XML validation since the built-in SOAP validation didn't work on Jboss5) and it all worked fine with jboss5 and jbossws native 3.3.1 GA.
> Now with jboss6 CR1, since it is shipped with jbossws-CXF 3.4.1 my @HandlerChain declaration does not seem to be valid any more (btw, I was not able to find any clear document on own to declare a handler chain with CXF).
@HandlerChain is supposed to work regardless of the installed webservice stack; it's part of JSR181 and it's also tested by the JavaEE 6 TCK, so it must work. Perhaps you can open another thread for this specific issue, with more details on your deployment, so that we try isolating what are the differences in jbossws-native and jbossws-cxf behaviour here. Also, try taking a look at the testsuite that includes samples with @HandlerChain.

Back to the AS 6 installation related topic, first of all, consider that JBoss AS 6 Final should be used now that it's out, forget about CR1.
> Today, I've downloded *jboss6 Final with CXF 3.4.1*
> 18:32:43,489 INFO  [AbstractServerConfig] JBoss Web Services - Stack CXF Server 3.4.1.GA
> and just like for jboss6 CR1, I tried to deploy jbossws native.
> But this time I get:
> 18:34:46,515 INFO  [AbstractServerConfig] JBoss Web Services - Native Server 3.4.0.GA
> 18:34:46,523 ERROR [AbstractKernelController] Error installing to PreInstall: name=WSDescriptorDeployer state=Real: java.lang.NoClassDefFoundError: org/jboss/wsf/spi/metadata/DescriptorParser
>         at java.lang.Class.getDeclaredConstructors0(Native Method) [:1.6.0_23]
>         at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389) [:1.6.0_23]
>         at java.lang.Class.getDeclaredConstructors(Class.java:1836) [:1.6.0_23]
> .....
> Caused by: *java.lang.ClassNotFoundException: org.jboss.wsf.spi.metadata.DescriptorParser*
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:202) [:1.6.0_23]
> So, jboss6 CR1 comes with  Stack CXF Server 3.4.0.CR3 and I can install Native Server 3.4.0.GA
> But, jboss6 Final comes with CXF 3.4.1 and I cannot install Native Server 3.4.0.GA...
Right, as 3.4.0 does not support AS 6 Final. The short reference page is  http://community.jboss.org/docs/DOC-13569 http://community.jboss.org/wiki/JBossWS-SupportedTargetContainers , but you can also read here  http://jbossws.blogspot.com/2010/12/ready-for-jboss-as-6-and-then.html http://jbossws.blogspot.com/2010/12/ready-for-jboss-as-6-and-then.html . Basically, the insight on this topic is that 3.4.1 was created only for supporting the last minute changes that have been applied on JBoss AS 6 between CR1 and GA. Some of those changes required non backward compatible changes on the JBossWS container integration code, hence the need for a new version (3.4.1) supporting AS 6 Final only.

Binary versions of JBossWS 3.4.1 have not been added to the download page yet, mainly because they were only meant for being included in AS 6 Final, but I understand the potential need for switching AS 6 Final to jbossws native (jbossws-cxf-3.4.1 is included in AS 6 Final), so I'll most probably add the 3.4.1 files to  http://jboss.org/jbossws/downloads http://jboss.org/jbossws/downloads later today or tomorrow.
> Can someone please explain me:
> - *how to install jbossws native in jboss6?*
> - *where do I get jbossws native 3.4.1 (is it available? 3.4.0 native or CXF are the latest available at  http://www.jboss.org/jbossws/downloads http://www.jboss.org/jbossws/downloads )?*
See above on the availability of 3.4.1 binary distributions at  http://jboss.org/jbossws/downloads http://jboss.org/jbossws/downloads . In the mean time, you can checkout the sources from  https://svn.jboss.org/repos/jbossws/stack/native/tags/jbossws-native-3.4.1.GA https://svn.jboss.org/repos/jbossws/stack/native/tags/jbossws-native-3.4.1.GA and build them (+ant deploy-jboss601+ as JBoss AS 6 Final was not out yet when 3.4.1 was tagged).
> - *how do I declare HandlerChain with CXF?*
> my EJB have @HandlerChain(file = "/META-INF/soapHandler/handler-chain.xml")
> and the handler-chain.xml is as follow:
>   <?xml version="1.0" encoding="UTF-8"?>
>   <handler-config>
>     <handler-chain>
>         <handler-chain-name>SoapHandler</handler-chain-name>
>         <handler>
>             <handler-name>SoapMessageValidationHandler</handler-name>
>             <handler-class>com.ubiqube.api.ws.soapHandler.MessageValidationSoapHandler</handler-class>
>         </handler>
>     </handler-chain>
>   </handler-config>

You declare the handler chain the same way you do with native, as that's defined by standards. My guess here is that your problem here is in the resolution of the specified path. First try moving the handler chain xml file close to the endpoint declaration class and using
file = "handler-chain.xml"
then try loading it from META-INF removing the initial slash in the path.

Reply to this message by going to Community

Start a new discussion in JBoss Web Services at Community

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-user/attachments/20110104/769060ce/attachment-0001.html 

More information about the jboss-user mailing list