Projets
Pages enfant
  • 3.11.2 Exposer le service

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.
Astuce
titleRelu

Relecture RB

Sommaire :

Sommaire
maxLevel3

...

...

Configuration

Afin d'exposer la couche service sous forme de Web Service il y a quelques éléments de configuration CXF à mettre dans la configuration Spring de la couche métier (properties/domain/domain.xml) : <import

Bloc de code
	<import resource="classpath:META-INF/cxf/cxf.xml" />

...


	<import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />

...


	<import resource="classpath:META-INF/cxf/cxf-servlet.xml" />

...


	
	<jaxws:endpoint id="domainService.remoteService" implementor="#domainService"

...


		address="/DomainService">

...


	</jaxws:

...

endpoint>

Explications :

  • Les imports spécifiques à CXF. A noter l'utilisation du préfixe classpath: qui permet de rechercher les fichier XML dans les jar du projet (celui de CXF ici)
  • L'espace de nom jaxws: est défini dans la balise racine du fichier Spring  Spring :
    Bloc de code
    xmlns:jaxws="http://cxf.apache.org/jaxws"

    
    xsi:schemaLocation=".../...

    
     http://cxf.apache.org/jaxws
    Image Removed
     http://cxf.apache.org/schemas/jaxws.xsd"
    
  • La balise jaxws:endpoint définit un point d'entrée (il est possible d'en définir plusieurs) de type Web Service. Elle a comme propriétés :
    • implementor qui pointe vers la classe ou une référence (signalé par le préfixe #) vers un bean Spring qui implémente le service.
    • address correspond à l'url, préfixée par /CXF, qui permettra d'interagir avec le Web Service. Typiquement ici si on veut accéder au WSDL du service on utilisera :