Commande WSDL2Java destinée aux applications JAX-RPC

Exécutez l'outil de ligne de commande WSDL2Java sur le fichier WSDL pour créer des API Java™ et des modèles de descripteur de déploiement.

[z/OS]L'outil de ligne de commande WSDL2Java n'est pas pris en charge sur la plateforme z/OS. Leur fonctionnalité est assurée par les outils d'assemblage fournis avec WebSphere Application Server s'exécutant sur la plateforme z/OS.

Un fichier WSDL (Web Services Description Language) décrit un service Web. La spécification JAX-RPC (Java API for XML-based Remote Procedure Call) définit un mappage d'API Java qui interagit avec le service web. La spécification Web Services for Java EE (Java Platform, Enterprise Edition) définit des descripteurs de déploiement qui déploient un service Web dans un environnement Java EE. La commande WSDL2Java est utilisée avec le fichier WSDL pour créer des API Java et des modèles de descripteur de déploiement en fonction de ces spécifications.

Pratiques recommandées Pratiques recommandées: La meilleure méthode consiste à utiliser des espaces de nom absolus dans votre WSDL ou votre schéma. Par défaut, l'outil WSDL2Java ne permet pas d'utiliser les espaces de nom relatifs. Ces derniers ont été dépréciés par le XML Plenary Interest Group et l'utilisation d'espaces de nom relatifs entraîne l'échec de la signature numérique XML comme requis par la spécification Canonical XML version 1.0. Cependant, si vous disposez d'un WSDL ou d'un schéma établi qui repose sur des espaces de nom relatifs, dans certains cas spécifiques vous pouvez utiliser la propriété allowRelativeNamespace pour désactiver les restrictions sur l'espace de nom relatif dans l'outil WSDL2Java. Pour plus d'informations, voir la description de la propriété. bprac
Vous pouvez convertir un espace de nom relatif en espace de nom absolu. L'exemple suivant est celui d'un espace de nom relatif :
targetNamespace="MyRelNamespace"
. Vous pouvez changer l'espace de nom relatif de cet exemple en espace de nom absolu en ajoutant les informations sur le protocole et l'URI de base :
targetNamespace="http://www.sample.com/MyRelNamespace"

Syntaxe de ligne de commande

La syntaxe de ligne de commande est la suivante :
WSDL2Java [arguments] WSDL-URI

Arguments requis

  • WSDL-URI

    Spécifie l'emplacement du fichier WSDL d'entrée à l'aide d'un URI (Universal Resource Identifier). Un chemin de fichier ordinaire peut également être utilisé si le fichier WSDL se trouve dans le système de fichiers local.

Arguments importants

  • -role rôle Java EE
    Indique le rôle de développement Java EE qui identifie les fichiers à générer. Les arguments valides sont les suivants :
    • client

      Une combinaison d'arguments develop-client et deploy-client.

    • deploy-client

      Génère les fichiers de liaison pour le déploiement du client.

    • deploy-server

      Génère les fichiers de liaison pour le déploiement du serveur.

    • develop-client (par défaut)

      Génère les fichiers pour le développement du client.

    • develop-server

      Génère les fichiers pour le développement du serveur.

    • server

      Une combinaison d'arguments develop-server et deploy-server.

  • -container conteneur Java EE
    Indique le conteneur Java EE à utiliser. Les arguments valides sont les suivants :
    • client

      Indique un conteneur client.

    • ejb

      Indique un conteneur d'EJB (Enterprise JavaBeans).

    • aucun

      Indique l'absence de conteneur.

    • web

      Indique un conteneur Web.

    Pour les rôles client (voir l'option -role), l'argument par défaut est none. S'il s'agit d'un rôle serveur, le conteneur doit être ejb ou web. La même option de conteneur doit être utilisée pour le développement et le déploiement.
  • -output répertoire

    Définit le répertoire principal pour les fichiers émis.

  • Fichier de mappage -inputMappingFile

    Indique le nom du fichier de mappage Web Services for Java EE.

  • -introspect

    Utilise les beans Java existants avec une nouvelle API de service web.

    Dans certains scénarios, il convient d'utiliser des classes Java existantes au lieu de générer de nouvelles classes. L'option -introspect dirige la commande WSDL2Java pour examiner des classes Java existantes lors de la génération de classes. Les classes existantes sont validées selon la spécification JAX-RPC. Exemple :

    Supposons que nous ayons un bean Java existant
    public class Bean {
    	public Date x;
    }
    Le fichier WSDL définit x sur xsd:dateTime. Sans l'option -introspect, la commande WSDL2Java génère un bean Java similaire à l'exemple suivant :
    public class Bean {
    	private Calendar x;
    	public void setx(Calendar value) (x=value;)
    	public Calendar getX() { return x;)
    }
    La commande WSDL2Java utilise l'option -introspect pour examiner le bean Java initial et pour générer des classes qui sont compatibles avec des beans Java existants.
  • -classpath chemins

    Définit un autre chemin de classes pour la recherche de classes Java.

  • -noDataBinding

    Désactive la liaison des types XML en typesJava. Chaque type XML est en fait mappé vers une interface javax.xml.soap.SOAPElement définie par la spécification SAAJ (SOAP with Attachments API for Java).

    Le modèle de programmation JAX-WS (Java API for XML Web Services) prend en charge SAAJ 1.2 et 1.3.

    Le modèle de programmation JAX-RPC prend en charge SAAJ 1.2.

    Les modèles de programmation Java définissent des mappages Java pour un sous-ensemble de types XML. Plusieurs types XML ne peuvent pas être mappés en beans ou primitives Java. Dans ce cas, la commande WSDL2Java mappe le type en un SOAPElement SAAJ. Un SOAPElement SAAJ est une représentation générique de l'élément dans le message. Les méthodes sur SOAPElement peuvent être utilisées pour examiner l'élément et ses enfants.

    Parfois, il est plus approprié d'utiliser le mappage SOAPElement générique de façon exclusive. Pour plus d'informations sur l'utilisation de SOAPElement, voir les informations relatives à l'utilisation de l'interface SOAP with Attachments API forJava et les lieurs de données personnalisés pour les applications JAX-RPC.

    Pour obtenir la liste complète des normes et spécifications prises en charge, voir les spécifications des services Web et la documentation des API.

  • -help

    Affiche un message d'aide et quitte.

  • -helpX

    Affiche un message d'aide pour les options étendues. Les options sont les suivantes :

  • -verbose

    Affiche les informations relatives au traitement, y compris les noms des fichiers générés.

  • -NStoPkg namespace=package

    Par défaut, les noms de package sont dérivés automatiquement des chaînes d'espaces nom dans le fichier WSDL. Par exemple, si l'espace de nom est de la forme http://x.y.com ou urn:x.y.com, le package correspondant est com.y.x.

    Vous pouvez indiquer votre propre mappage à l'aide de l'argument -NStoPkg que vous pouvez répéter autant de fois que nécessaire, une fois pour chaque mappage d'espace de nom unique. Par exemple, si un espace de nom figure dans le fichier WDSL appelé urn:AddressFetcher2 et que vous souhaitez que les fichiers générés à partir des objets de cet espace de nom résident dans le package samples.addr, fournissez l'argument -NStoPkg "http://urn:AddressFetcher2/"=samples.addr à la commande WSDL2Java.

  • -timeout secondes

    Spécifie le délai en secondes pendant lequel la commande WSDL2Java attend la réponse de WSDL-URI avant d'abandonner. La valeur par défaut est 45 secondes ; la valeur -1 désactive le délai d'expiration.

  • -genResolver

    Génère une classe absolute-import resolver. Le but de cette classe est d'enregistrer le contenu des fichiers WSDL importés, utilisés par l'URI WSDL. Cette classe peut être également utilisée par l'environnement d'exécution pour les futures exécutions de la commande WSDL2Java. Cette flexibilité est souhaitable lorsque les fichiers WSDL importés sont éloignés et peuvent être inaccessibles. Si vous utilisez une classe import resolver, un fichier WSDL distant ne peut plus avoir des contenus différents lors de l'exécution comme il pouvait en avoir lors du développement. La classe générée est nommée _AbsoluteImportResolver.java. Cette classe doit être compilée et intégrée avec les autres classes Java générées par la commande WSDL2Java.

  • -useResolver classe-résolveur

    Indique une classe absolute-import resolver à utiliser pendant l'analyse. Cette classe doit avoir été créée au cours d'une précédente exécution de la commande WSDL2Java à l'aide de l'option -genResolver. Elle doit figurer dans la variable CLASSPATH.

  • -deployScope argument
    Indique comment déployer l'implémentation du serveur. Les arguments valides sont les suivants :
    • Application

      Utilise une instance de la classe d'implémentation pour toutes les demandes.

    • Request

      Crée une instance de la classe d'implémentation pour chaque demande.

    • Session

      Crée une instance de la classe d'implémentation pour chaque session.

Autres arguments

  • -user id

    Indique le nom de connexion de l'utilisateur permettant d'accéder à l'URI WSDL.

  • -password mot_passe

    Indique le mot de passe de connexion de l'utilisateur pour accéder à l'URI WSDL.

  • -all

    Génère des fichiers Java pour tous les types, même ceux qui ne sont pas référencés.

  • -allowRelativeNamespace true ou false

    Indique si les restrictions d'espace de nom relatif doivent être ou non désactivées. Si vous spécifiez -allowRelativeNamespace=true, les restrictions sur les espaces de nom relatifs sont désactivées.

    Eviter les incidents Eviter les incidents: N'utilisez cette propriété que si vous avec établi un fichier ou un schéma WSDL qui repose sur des espaces de nom relatifs et que vous cherchez à interagir avec un ensemble de fournisseurs défini qui permet l'utilisation des espaces de nom relatifs.gotcha
  • -debug

    Imprime des informations de débogage.

  • -genJava argument
    Génère des fichiers Java. Les arguments valides sont les suivants :
    • IfNotExists, par défaut
    • Overwrite
    • Non
  • -javaSearch argument
    L'option -javaSearch est utilisée avec l'option -genJava. Si l'option -genJava IfNotExists est définie, utilisez l'option -javaSearch pour déterminer comment l'existence d'un fichier est vérifiée.
    • File (par défaut) : recherche un fichier dans le répertoire de sortie
    • Classpath : recherche une classe dans la variable CLASSPATH
    • Both : recherche un fichier dans le répertoire de sortie ou dans une classe définie dans la variable CLASSPATH
  • -genXML argument
    Génère les fichiers .xml et .xmi. Les arguments valides sont les suivants :
    • IfNotExists, par défaut
    • Overwrite
    • Non
  • -genImplSer true ou false

    Indique que chaque bean Java généré implémente java.io.Serializable. La valeur par défaut est false.

  • -genEquals true ou false

    Indique que chaque bean Java généré a des méthodes equals et hashCode. La valeur par défaut est false.

  • -noWrappedOperations

    Désactive la détection des opérations encapsulées. Des beans Java pour les messages de demande et de réponse sont générés.

  • -noWrappedArrays

    Désactive la détection des tableaux encapsulés.

  • -fileNStoPkg nom de fichier

    Spécifie le fichier d'espace de nom pour inclure des mappages. La valeur par défaut est NStoPKG.properties.

  • service nom de service wsdl

    Génère les fichiers pour le service WSDL installé uniquement.

  • -testCase

    Génère le modèle pour un scénario de test JUnit portant sur des services Web. JUnit est un cadre simple permettant d'écrire des tests réitérables.


Icône indiquant le type de rubrique Rubrique de référence



Icône d'horodatage Dernière mise à jour: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rwbs_wsdl2java
Nom du fichier : rwbs_wsdl2java.html