在WebSphere发布CXF注意事项
在CXF官网搜索到的:
https://cwiki.apache.org/confluence/display/CXF20DOC/Application+Server+Specific+Configuration+Guide#ApplicationServerSpecificConfigurationGuide-Websphere
WebsphereCurrently, I've only found on way to make cxf work with websphere: adding jars to the 'endorsed' folder. (*Note: this has been validated against Websphere6.1.0.0, 6.1.0.19, and 6.1.0.27 *)
No Web Services Feature Pack for WebSphere installedput jar in the endorsed folderput the wsdl4j-1.6.1.jar in the $WebSphere_HOME/java/jre/lib/endorsed folder. In the WebSphere console, find the specific enterprise application, click the "Class loading and update detection". Mark the "Classes loaded with application class loader first" selected. Mark the "Class loader for each war file in application" selected.And then restart the Websphere server. (Because we changed the endorsed folder, we need to restart it to make it take effect).
Please make sure your classpath doesn't have the servlet-2.5 library, since WebSphere6.1 is servlet-2.4 compliant!Add your own class loaderIf you put your wsdl4j-1.6.1 jar in $WAS_HOME/java/jre/lib/endorsed, all your applications will depend on your version of wsdl4j. Another solution is to create a new class loader in your server which loads before parent class loader, create a shared library with your version of wsdl4j, and add this shared library to your new class loader. This version of wsdl4j will only be available for your specific server and not affect applications running in other servers.
Step by step
PK96989: ENABLE USE OF THIRD PARTY JAX-WS WEB SERVICES ENGINE IN WEBSPHEREThis fix requires at least fixpack 27 (6.1.0.27). It allows to disable the WebSphere Web Servicesengine for the whole JVM by setting the JVM property com.ibm.websphere.webservices.DisableIBMJAXWSEngine=trueor to disable the engine just for a specific module by adding DisableIBMJAXWSEngine: trueto WAR/META-INF/MANIFEST.MF.
According to IBM, this fix shall be included into fixpack 29.
For details, please see http://www-01.ibm.com/support/docview.wss?rs=180&uid=swg1PK96989
The WebSphere team has also added instructions for using third party JAX-WS applications to their tech articles: http://www.ibm.com/developerworks/websphere/library/techarticles/1001_thaker/1001_thaker.html