Hi all,

I had an issue while trying CXF handler samples due to javax.xml.soap
package. In Carbon, currently we get javax.xml.soap api from geronimo-saaj
api bundle and the saaj implementation is coming from axis2-saaj. But CXF
works properly only with the JDK implementation of javax.xml.soap.

In order to solve this problem, I wanted to let axis2 bind to geronimo and
cxf bind to JDK. So I followed these steps.

1. Currently, geronimo-saaj bundle is a fragment of the system bundle [1].
First I made it a normal bundle as we no longer need it to be a fragment.
2. geronimo-saaj bundle exports the javax.xml.soap package with version
1.0.0. So I fixed axis2 bundle to import the 1.0.0 version.
3. Added following lines to launch.ini to get the javax.xml.soap api and
the implementation for the JDK.

javax.xml.soap,\
com.sun.xml.internal.messaging.saaj.soap.ver1_1,\
com.sun.xml.internal.messaging.saaj.soap,\

4. Imported javax.xml.soap version 0.0.0 from CXF bundle.

Now the bundle wiring looks like this..

osgi> p javax.xml.soap
javax.xml.soap; version="0.0.0"<org.eclipse.osgi_3.7.0.v20110613 [0]>
  org.eclipse.core.expressions_3.4.300.v20110228 [73] imports
  org.eclipse.core.runtime_3.7.0.v20110110 [75] imports
  org.eclipse.equinox.p2.garbagecollector_1.0.200.v20110510 [99] imports
  tomcat_7.0.26.wso2v1 [322] imports  <--------------- (CXF is a fragment
of tomcat. Therefore it's shown through tomcat bundle)
javax.xml.soap; version="1.0.0"<geronimo-saaj_1.3_spec_1.0.0.wso2v2 [1]>
  axis2_1.6.1.wso2v5 [16] imports
  spring.framework_3.1.0.wso2v1 [318] imports
  wss4j_1.5.11.wso2v3 [328] imports

Finally I tested both CXF handler samples and Axis2 Caching which uses
saaj. Both seems to work properly.

Now I'm gonna give a new version to geronimo saaj and un-graduate it and
add it to orbit. Then I'll commit all above changes. If anyone can see any
issues with this approach, please let me know.

Thanks,
~Isuru

[1]
https://svn.wso2.org/repos/wso2/tags/carbon/3.1.0_chunk1_as_ms/orbit/geronimo-saaj_1.3_spec/1.0.0.wso2v2

-- 
Isuru Suriarachchi
Technical Lead
WSO2 Inc. http://wso2.com
email : is...@wso2.com
blog : http://isurues.wordpress.com/

lean . enterprise . middleware
_______________________________________________
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to