Timeout für Jax-RPC WebService festlegen

Es gibt Fragen im Internet auf die es keine Antwort zu geben scheint es sei denn man stolpert glücklicherweise über selbige. Genau das ist mir heute passiert und damit es euch nicht ebenso geht, landet die Antwort natürlich direkt hier im Blog 🙂

Problem: Ihr wollt über JAX-RPC einen WebService aufrufen. Dieser ist nicht erreichbar und euer aufrufender Client dümpelt vor sich hin und arbeitet nicht weiter.

Ansatz: Man setzt einen Timeout den der aufrufende Client auf den WebService wartet.

Lösung: So unbekannt und doch so einfach:

HelloWorldServiceLocator hwsl = new HelloWorldServiceLocator();
HelloWorld hw = hwsl.getHelloWorld();
((Stub) hw).setTimeout(60000);
hw.sayHello();

Man ruft also den WebService über einen herkömmlichen WebService-Client auf (Dieser lässt sich in jeder guten IDE generieren) und castet das Service-Objekt auf ein Stub. Hier kann man nun einen Timeout in Millisekunden setzen. So einfach ist das!

Leave a Reply

Your email address will not be published. Required fields are marked *