Frage

I eingesetzt, um einen JAX-WS-Service und die Verwendung wsimport zu Client-Code zu generieren. Weil ich wsimport auf localhost laufen, ich habe den Client-Code mit binind auf „localhost“ Adresse.

Aber ich will, dass dieser Client-Code auf anderen Computern wiederverwenden, die meinen bereitgestellten Dienst mit einem öffentlichen y.y.y.y. IP zugreifen Wie kann dynamisch jenen (einmal) erzeugten Client-Code verwenden, um meinen Dienst zuzugreifen. (Die IP-of-Service kann sich ändern ...)

War es hilfreich?

Lösung

Dies ist in der FAQ von JAX-WS:

  

Q. Wie kann ich die Web Service ändern Adresse dynamisch für eine Anfrage?

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

Andere Tipps

Klar. Werfen Sie einen Blick auf die JBoss Beispiel . Hier ist der relevante Code-Snippet:

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

Normalerweise sind die WSDL generiert und therfore der WS-Provider fügt die entsprechenden URLs in die WSDL.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top