Jaxws 2.1.5 on weblogic 10.3.1 instead of pre-installed jaxws 2.1.1?

Is it possible, and when so, how?

+6
source share
1 answer

In fact, the JAX-WS implementation included in WebLogic 10.3 is based on JAX-WS RI 2.1.4, as described in What's New in WebLogic Server :

The JAX-WS implementation on WebLogic Server is based on the implementation of the JAX-WS Reference (RI) version 2.1.4 and includes tool-level enhancements to simplify the construction and deployment of JAX-WS services and simplify the transition from JAX-RPC to JAX-WS. The following features and enhancements are available in JAX-WS RI 2.1.4.

But this is only a side note :) Now, to answer your question, yes , it is possible. Basically, the idea is to pack everything as an EAR and provide weblogic-application.xml to specify the Java packages that need to be loaded from the EAR from the default WebLogic class loader. To do this, follow these steps:

  • Create an EAR with a war built into it.
  • In META-INF/weblogic-application.xml your EAR, put

     <?xml version="1.0" encoding="UTF-8"?> <weblogic-application> <application-param> <param-name>webapp.encoding.default</param-name> <param-value>UTF-8</param-value> </application-param> <prefer-application-packages> <package-name>com.sun.xml.*</package-name> <package-name>javax.xml.bind.*</package-name> <package-name>javax.jws.*</package-name> <package-name>javax.xml.soap.*</package-name> </prefer-application-packages> </weblogic-application> 
  • Place the required JARs in the WEB-INF/lib your WAR.

If WebLogic reports problems with class loading, you may need to add more Java packages under the prefer-application-packages element.

+11
source

All Articles