@WebService |
Cette annotation marque une classe Java ou une interface de noeud final de service comme implémentant une interface de service Web. Trois des propriétés de l'annotation peuvent être utilisées avec une classe d'implémentation de noeud final de service seulement pour un noeud final JavaBeans.
Il s'agit de serviceName, portName et endpointInterface.
Si l'annotation référence une interface de noeud final de service via l'attribut endpointInterface, l'interface de noeud final de service doit également comporter une annotation @WebService.
Par défaut, toutes les méthodes publiques dans une classe qui spécifie l'annotation
@WebService sont exposées dans le service Web.
|
- Cible de l'annotation : Type
- Propriétés :
- - name
- Nom de wsdl:portType. La propriété name est mappée à une interface de noeud final de service ou une classe d'implémentation Java. La valeur par défaut est le nom non qualifié de la classe ou de l'interface Java. (Chaîne)
- - targetNamespace
- Spécifie l'espace de nom XML des éléments WSDL et XML qui sont générés à partir du service Web.
- Si l'annotation @WebService.targetNamespace se trouve dans une interface de noeud final de service, l'élément targetNamespace est utilisé pour l'espace de nom pour wsdl:portType (et les éléments XML associés).
- Si l'annotation @WebService.targetNamespace se trouve sur un bean d'implémentation de service qui ne référence pas une interface de noeud final de service (via l'élément d'annotation endpointInterface), l'élément targetNamespace est utilisé pour wsdl:portType et wsdl:service (et les éléments XML associés).
- Si l'annotation @WebService.targetNamespace se trouve sur un bean d'implémentation de service qui référence une interface de noeud final de service (via l'élément d'annotation endpointInterface), l'élément targetNamespace est utilisé pour wsdl:service seulement (et les éléments XML associés).
La valeur par défaut est l'espace de nom qui est mappé depuis le nom de package contenant le service Web. (Chaîne)
- - serviceName
- Indique le nom du service Web : wsdl:service.
Cette propriété n'est pas admise dans les interfaces de noeud final. La valeur par défaut est le nom simple de la classe Java + Service. (Chaîne)
- - endpointInterface
- Indique le nom qualifié de l'interface de point de contact de service qui définit le contrat de service Web abstrait des services. Si ce nom est indiqué, l'interface de point de contact de service sert à déterminer le contrat WSDL abstrait. (Chaîne)
- - portName
- Correspond à l'attribut wsdl:portName. La propriété portName est le nom du port du noeud final. La valeur par défaut est WebService.name +Port . (Chaîne)
- - wsdlLocation
- Spécifie l'adresse Web du document WSDL qui définit le service Web. L'adresse Web est relative ou absolue. (Chaîne)
|
@Retention(value = RetentionPolicy.RUNTIME)
@Target({TYPE})
public @interface WebService{
String name() default “”;
String targetNamespace() default “”;
String serviceName() default “”';
String wsdlLocation() default “”;
String endpointInterface() default “”;
String portName() default “”;
};
|
@WebMethod |
Cette annotation indique une méthode constituant une opération de service Web. Vous pouvez appliquer cette annotation à des méthodes publiques dans une interface de noeud final de service client ou serveur, ou dans une classe d'implémentation de noeud final de service pour un noeud final JavaBeans.
L'annotation @WebMethod est prise en charge uniquement dans les classes comportant l'annotation @WebService.
|
- Cible de l'annotation : Méthode
- Propriétés :
- - operationName
- Spécifie le nom de l'élément wsdl:operation qui correspond à cette méthode. La valeur par défaut est le nom de la méthode Java. (Chaîne)
- - action
- Définit l'action correspondant à cette opération. Pour les liaisons SOAP, cette valeur détermine la valeur de l'en-tête SOAPAction. (Chaîne)
- - exclude
- Indique si une méthode doit être exclue du service Web. Cette propriété peut être utilisée avec une classe d'implémentation seulement. Utilisée pour qu'une méthode héritée ne soit pas exposée dans ce service Web.
Si cet élément est spécifié, vous ne devez pas spécifier d'autres éléments pour @WebMethod. Cette propriété n'est pas admise dans les interfaces de noeud final.
La valeur par défaut est false. (Booléenne)
|
@Retention(value = RetentionPolicy.RUNTIME)
@Target({TYPE})
public @interface WebMethod{
String operationName() default “”;
String action() default “”;
boolean exclude() default false;
};
|
@Oneway |
Cette annotation indique qu'une méthode est une opération unidirectionnelle pour un service Web. Elle propose un message d'entrée mais pas de message de sortie. Cette annotation ne peut être utilisée que dans les méthodes qui ne possèdent pas de valeur de retour. Vous pouvez appliquer cette annotation à des méthodes publiques dans une interface de noeud final de service client ou serveur, ou dans une classe d'implémentation de noeud final de service pour un noeud final JavaBeans.
|
- Cible de l'annotation : Méthode
- Il n'existe pas de propriété dans l'annotation OneWay.
|
@Retention(value = RetentionPolicy.RUNTIME)
@Target({TYPE})
public @interface OneWay{
};
|
@WebParam |
Cette annotation personnalise le mappage d'un paramètre individuel à une partie de message de service Web et un élément XML. Vous pouvez appliquer cette annotation à des méthodes publiques dans une interface de noeud final de service client ou serveur, ou dans une classe d'implémentation de noeud final de service pour un noeud final JavaBeans.
|
- Cible de l'annotation : Paramètre
- Propriétés :
- - name
- Si l'opération est de type RPC et que l'attribut partName n'est pas spécifié, il s'agit du nom de l'attribut
wsdl:part qui représente le paramètre. Si l'opération est de type document ou que le paramètre est mappé à un en-tête, name est le nom local de l'élément XML qui représente le paramètre. Cet attribut est obligatoire si l'opération est de type document, que le style de paramètre est BARE et que le mode est OUT ou INOUT.
Si l'attribut partName est spécifié, l'attribut name est ignoré. (Chaîne)
- - partName
- Définit le nom de l'attribut wsdl:part qui représente ce paramètre. N'utilisez ce paramètre que si l'opération est de type RPC ou si l'opération est de type document et que le style de paramètre est BARE.
(Chaîne)
- - targetNamespace
- Indique l'espace de nom XML de l'élément XML du paramètre.
Ce paramètre ne s'applique qu'aux liaisons de document lorsque l'attribut est mappé à un élément XML. La valeur par défaut est l'élément targetNamespace du service Web. (Chaîne)
- - mode
- La valeur représente le sens du flux du paramètre pour cette méthode. Les valeurs admises sont IN, INOUT et OUT. (Chaîne)
- - header
- Indique si le paramètre figure dans un en-tête de message plutôt que dans un corps de message. La valeur par défaut est false.
(Booléenne)
|
@Retention(value = RetentionPolicy.RUNTIME)
@Target({PARAMETER})
public @interface WebParam{
public enum Mode{
IN,
OUT,
INOUT
};
String name() default “”;
String partName() default "";
String targetNamespace() default “”;
Mode mode() default Mode.IN
boolean header() default false;
};
|
@WebResult |
Cette annotation personnalise la façon dont une valeur de retour est mappée à une partie WSDL ou un élément XML. Vous pouvez appliquer cette annotation à des méthodes publiques dans une interface de noeud final de service client ou serveur, ou dans une classe d'implémentation de noeud final de service pour un noeud final JavaBeans.
|
- Cible de l'annotation : Méthode
- Propriétés :
- - name
- Indique le nom de la valeur de retour telle qu'elle est répertoriée dans le fichier WSDL et détectée dans les messages électroniques. Pour les liaisons RPC, il s'agit du nom de l'attribut wsdl:part qui représente la valeur de retour. Pour les liaisons de document, le paramètre name est le nom local de l'élément XML qui représente la valeur de retour.
La valeur par défaut est return pour les liaisons RPC et DOCUMENT/WRAPPED. La valeur par défaut correspond au nom de méthode + Response pour les liaisons DOCUMENT/BARE. (Chaîne)
- - targetNamespace
- Indique l'espace de nom XML pour la valeur de retour. Utilisez cette annotation pour les liaisons de document seulement, lorsque la valeur de retour est mappée à un élément XML.
La valeur par défaut est l'élément targetNamespace pour le service Web. (Chaîne)
- - header
- Indique si le résultat est transporté dans un en-tête. La valeur par défaut est false. (Chaîne)
- - partName
- Indique le nom de partie du résultat comportant des opérations RPC ou DOCUMENT/BARE. La valeur par défaut est @WebResult.name.
(Booléenne)
|
@Retention(value = RetentionPolicy.RUNTIME)
@Target({METHOD})
public @interface WebResult{
String name() default “return”;
String targetNamespace default() “”;
boolean header() default false;
String partName() default "";
};
|
@HandlerChain |
Cette annotation associe le service Web à une chaîne de gestionnaires définie en externe. Vous pouvez utiliser cette annotation si la configuration du gestionnaire doit être partagée entre plusieurs services Web et que la configuration de gestionnaire imbriquée dans la source de l'application n'est pas efficace. Appliquez cette annotation à une interface de noeud final de service client ou serveur ou à une classe d'implémentation de noeud final de service pour un noeud final JavaBeans.
|
- Cible de l'annotation : Type
- Propriétés :
- fichier- file
- Indique l'emplacement du fichier de chaînes de gestionnaires. L'emplacement de fichier est une adresse java.net.URL absolue au format externe ou un chemin relatif depuis le fichier source ou classe. (Chaîne)
- - name
- Indique le nom de la chaîne de gestionnaires dans le fichier de configuration.
(Chaîne)
|
@Retention(value = RetentionPolicy.RUNTIME)
@Target({TYPE})
public @interface HandlerChain{
String file();
String name();
};
|
@SOAPBinding |
Cette annotation spécifie le mappage du service Web au protocole de message SOAP. Vous pouvez appliquer cette annotation à un type ou à des méthodes publiques dans une interface de noeud final de service client ou serveur, ou dans une classe d'implémentation de noeud final de service pour un noeud final de beans Java.
L'annotation au niveau de la méthode est limitée par les éléments qu'elle peut spécifier. Utilisez-la uniquement si la propriété style a pour valeur DOCUMENT.
Si l'annotation au niveau de la méthode n'est pas spécifiée, le comportement @SOAPBinding du type est utilisé.
|
- Cible de l'annotation : Type ou Méthode
- Propriétés :
- - style
- Définit le style de codage pour les messages qui sont envoyés au service Web et depuis le service Web. Les valeurs admises sont DOCUMENT et RPC.
La valeur par défaut est DOCUMENT. (Chaîne)
- - use
- Définit le codage qui est utilisé pour les messages qui sont envoyés au service Web et depuis le service Web. La valeur par défaut est LITERAL. ENCODED n'est pas une valeur prise en charge. (Chaîne)
- - parameterStyle
- Détermine si les
paramètres de la méthode représentent le corps du message entier ou s'il s'agit d'éléments qui sont encapsulés dans un
élément de niveau supérieur dont le nom est tiré de celui de l'opération. Les valeurs admises sont WRAPPED ou BARE. Vous pouvez utiliser la valeur BARE avec les liaisons de style DOCUMENT. La valeur par défaut est WRAPPED. (Chaîne)
|
@Retention(value = RetentionPolicy.RUNTIME)
@Target({TYPE})
public @interface SOAPBinding{
public enum Style{
DOCUMENT,
RPC
};
public enum Use{
LITERAL,
};
public enum ParameterStyle{
BARE,
WRAPPED
};
Style style() default Style.DOCUMENT
Use use() default Use.LITERAL
ParameterStyle parameterStyle() default ParameterStyle.WRAPPED;
};
|