Notes de version de Sun Java System Application Server 9.1 Update 1-9.1 Update 2

Services Web

Cette section décrit les problèmes connus liés au conteneur Web et les solutions associées.

Échec de la tâche ant wsimport sur Java EE SDK b33d (utilisant JDK 1.6) avec l'erreur NoClassDefFoundError (6527842)

Description

Vous pouvez rencontrer ce problème à l'exécution des tests JAX–WS avec JDK 1.6 inclus dans Java EE SDK b33d. Les tests sont immédiatement interrompus avec le message d'erreur suivant :


[wsimport] Exception in thread "main" java.lang.NoClassDefFoundError: \
com/sun/tools/ws/WsImport

Cette erreur se produit même si le fichier webservices-tools.jar contient les classes com/sun/tools/ws/WsImport.class, com/sun/tools/ws/ant/WsImport.class et com/sun/tools/ws/ant/WsImport2.class. En outre, cet espace de travail test fonctionne normalement avec 1.5.0-10 JDK.

Solution

Copiez le fichier webservices-api.jar vers $JAVA_HOME/jre/lib/endorsed avant d'exécuter les tests JAX-WS.

Échec des commandes publish-to-registry sous les versions IFR EE (6602046)

Description

JAXR utilise SAAJ pour envoyer des messages soap au registre. Sans IFR, les classes impl SAAJ se trouvent dans lib/webservices-rt.jar . Avec IFR, les classes SAAJ se trouvent toujours dans lib/webservices-rt.jar . En outre, le fichier saaj-impl.jar est stocké dans le répertoire /usr/share/lib. Ce fichier jar est récupéré par serveur d'application et est prioritaire par rapport aux classes de webservices-rt.jar . Il ne dispose pas des autorisations de sécurité nécessaires pour envoyer des messages soap au registre des services Web. Le package doit être modifié afin que les fichiers jar disposent des autorisations nécessaires sous le répertoire /usr/share/lib ou que ceux-ci ne dépendent pas des fichiers jar de /usr/share/lib.

Solution

Ajoutez les éléments suivants au fichier server.policy :


grant codeBase "file:/usr/share/lib/saaj-impl.jar" {
   permission java.security.AllPermission;
};

Échec de la commande wscompile avec l'erreur "package javax.xml.rpc does not exist" sous JDK6 u4 b3 (6638567)

Description

La tâche ant wscompile échoue pour Java EE SDK 9.1 Update 1 sous JDK 6 Update 4. Pour chaque classe API JAX-RPC, le message d'erreur suivant s'affiche :


package package-name does not exist

Solution

Avant d'exécuter la tâche ant wscompile, assurez-vous que javaee.jar est spécifié dans le chemin de classe, et non pas j2ee.jar.