Question

Je déployé un service JAX-WS et l'utilisation wsimport pour générer du code client. Parce que je lance wsimport sur localhost, je suis le code client avec binind sur l'adresse "localhost".

Mais je veux réutiliser les code client sur d'autres ordinateurs qui accèdent à mon service déployé avec une y.y.y.y. IP publique Comment utiliser dynamiquement les (une fois) généré le code client pour accéder à mon service. (L'adresse IP de service peut changer ...)

Était-ce utile?

La solution

Ceci est couvert dans le FAQ de JAX-WS:

  

Q. Comment puis-je changer l'adresse de service Web dynamique pour une demande?

((BindingProvider)proxy).getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, "..."); 

Autres conseils

Bien sûr. Jetez un oeil à la exemple JBoss . Voici l'extrait de code correspondant:

BindingProvider bp = (BindingProvider) port;
bp.getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, "http://your.wsdl.location");

Habituellement, le WSDL est généré et therfore le fournisseur WS insère les URL pertinentes dans le WSDL.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top