Développement d'un descripteur de déploiement webservices.xml pour des applications JAX-WS
Des descripteurs de déploiement sont des fichiers texte standard, formatés en XML et intégrés à une application de service web. Vous pouvez éventuellement utiliser le descripteur de déploiement webservices.xml pour augmenter ou substituer des métadonnées d'applications spécifiées dans des annotations au sein de services Web JEX-WS (Java™ API for XML-Based Web Services).
Pourquoi et quand exécuter cette tâche
A l'instar des services Web JAX-RPC (Java API for XML-based RPC), vous pouvez utiliser des descripteurs de déploiement pour décrire des services Web JAX-WS. Pour les services Web JAX-WS, l'utilisation du descripteur de déploiement webservices.xml est facultatif car vous pouvez utiliser des annotations pour spécifier toutes les informations contenues dans le fichier de descripteur de déploiement. Vous pouvez utiliser ce fichier pour augmenter ou remplacer des annotations JAX-WS existantes. Toutes les informations que vous définissez dans le descripteur de déploiement webservices.xml remplacent les informations correspondantes spécifiées par les annotations.
Un service Web JAX-WS nécessite que vous annotiez votre classe Java avec l'annotation javax.jws.WebService ou l'annotation javax.jws.WebServiceProvider pour des noeuds finaux du fournisseur. Vous pouvez utiliser des descripteurs de déploiement côté serveur pour substituer des attributs correspondants de l'annotation ou pour étendre des informations au sein des annotations. Il existe une relation définie entre les éléments du descripteur de déploiement et les annotations @WebService et @WebServiceProvider. Pour plus d'informations sur les éléments du descripteur de déploiement et le mappage vers les attributs d'annotations @WebService et @WebServiceProvider, reportez-vous à la section 5.3 dans la spécification Web Services for Java EE (Java Platform, Enterprise Edition), Version 1.2. Il existe aussi des éléments du descripteur de déploiement webservice.xml qui mappent vers d'autres annotations. Par exemple, l'élément du descripteur de déploiement <protocol-binding> mappe vers l'annotation @BindingType et l'élément du descripteur de déploiement <enable-mtom> mappe vers l'annotation @MTOM. Pour plus d'informations sur les éléments du descripteur de déploiement des services web, voir la section 7.1 de la spécification We b Services for Java EE (Java Platform, Enterprise Edition).
Procédure
Résultats
Des modèles de descripteur de déploiement sont disponibles et peuvent être utilisés pour remplacer les attributs d'annotation JAX-WS ou pour spécifier des attributs qui ne sont pas définis par l'annotation.
Exemple
@WebService(wsdlLocation=”http://myhost.com/location/of/the/wsdl/ExampleService.wsdl”)
Le descripteur de déploiement webservices.xml associé indique de la manière suivante un nom de fichier différent pour le document WSDL : <webservices>
<webservice-description>
<webservice-description-name>ExampleService</webservice-description-name>
<wsdl-file>META-INF/wsdl/ExampleService.wsdl</wsdl-file>
…
</webservice-description>
</webservices>
La valeur indiquée dans le descripteur de déploiement, META-INF/wsdl/ExampleService.wsdl, remplace la valeur l'annotation. Que faire ensuite
Configurez le descripteur de déploiement webservice.xml. Une fois les descripteurs de déploiement configurés, vous devez assembler l'application des services Web pour la déployer.