2009-12-04 13 views

risposta

11

In realtà, l'implementazione di JAX-WS bundle in WebLogic 10.3 si basa su JAX-WS RI 2.1.4 come documentato nella What's New in WebLogic Server:

L'implementazione del server WebLogic di JAX-WS è basato sul JAX -WS Reference Implementation (RI), Versione 2.1.4, e include miglioramenti al livello dello strumento per semplificare la creazione e l'implementazione dei servizi JAX-WS e per facilitare la migrazione da JAX-RPC a JAX-WS. Le seguenti funzioni e miglioramenti sono disponibili da JAX-WS RI 2.1.4.

Ma questo è solo un lato nota :) Ora, per rispondere alla tua domanda, sì , è possibile. Fondamentalmente, l'idea è di impacchettare tutto come EAR e di fornire un weblogic-application.xml per specificare i pacchetti Java che devono essere caricati dall'AER anziché dal classloader predefinito di WebLogic. A tale scopo, attenersi alla seguente procedura:

  1. Creare un orecchio con la vostra guerra incorporato in esso
  2. Nel META-INF/weblogic-application.xml del vostro orecchio, mettere

    <?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> 
    
  3. Mettere i JAR richiesti nel WEB-INF/lib della tua GUERRA.

Se WebLogic sta segnalando problemi classloading, potrebbe essere necessario aggiungere più pacchetti Java sotto l'elemento prefer-application-packages.

+0

Risposta molto utile, grazie. La mia versione jaxws 2.1.1 è stata riprodotta da wsimport -version. – Gerard

Problemi correlati