2017-02-01 1 views
1

Est-il possible d'utiliser uniquement la requête Web dans la méthode avec l'annotation @WebMethod sans réponse? Ou dans ws nous devrions toujours obtenir une réponse et j'ai besoin de quelque chose d'autre? Il ressemble àJAX-WS - comment désactiver la réponse automatique sur @WebMethod?

@WebMethod public void createUser( @WebParam(name="userInfo") UserInfo userInfo) throws MyException

dans l'interface qui a été produite à partir wsdl. Mais quand j'ai envoyé une requête au serveur j'ai reçu une réponse malgré le vide dans la méthode.

Et pourriez-vous s'il vous plaît des livres de conseils sur ce thème.

Merci d'avance!

Répondre

2

Vous pouvez utiliser l'annotation @Oneway

@WebMethod() 
@Oneway() 
public void insertUser(String username) { 
... 
} 

Documentation:

Indique que la @WebMethod donnée a seulement un message d'entrée et pas de sortie. Généralement, une méthode oneway renvoie le thread de contrôle à l'application appelante avant d'exécuter la méthode métier réelle. Un processeur 181 doit signaler une erreur si une opération marquée @Oneway a une valeur de retour ou des paramètres de Holder, ou déclare des exceptions vérifiées.

Voici table summarizes la norme JSR-181 annotations que vous pouvez utiliser dans votre fichier JWS pour spécifier la forme et le comportement de votre service Web