Time out while calling webservice using SOAPHTTP

Hi,

We are using 6.5 version and using webServices for some real time interfaces.
Service being used is pub.client:soapHTTP.

one day the web link to which we are sending the soap data was in hunged state,our flow service didnt timed out and was in running state continuosly for 3 days .then we restarted the server and after that it worked bcus at client side also they restarted their web service.
Just wanted to know y it didnt time out even if the client side link was down for 3 days.it should be catched and thrown in the exception,isnt it?

where do we set the time out properties?

what is the response of pub.client:soapHTTP service if http link is down?

kindly reply…

Thanks :slight_smile:

Investigate the watt.net.timeout setting. This is a global, server level property.

If you have SP3, that provides a timeout property. You should be able to set timeout for each web service independent of the server timeout.

Hi

Thanks for reply…

but it is not set in watt.net.timeout property.

3 instances of the service kept running around 3 days… even if at service level timeout was set but it diidnt get time out.

Try Catch was there and sopaHTTP was inside that…but it didnt come in catch :frowning:
shouldnt it throw an exception if the web link was down?

when soaphttp service was called it didnt get any response in return.so it hunged.

we restarted the server cuz it was required to JVM to it itself…

Can you please suggect what we need to do so that it will never happen in future?

let me know if further explaination is required about the problem

thanks :slight_smile:

I don’t understand what that means. Do you mean the property is not set? That the property was not honored (or isn’t used) in this specific case?

Take a look at the description of service timeout. If the service never returns, a service timeout will never occur. The service timeout feature is kind of weak–it will throw an exception if the service being called took to long to complete, but it will not “interrupt” that call. The service call must complete first and then IS will assess whether or not a timeout occurred.

I think this is what watt.net.timeout is supposed to address but I may be mistaken.

Hi Prerna,

Currently I am also facing the same issue, can you please tell me how u have fixed it.

Thanks,

Bijendra
Mumbai

The solution I used in the past was to create a flow to contain only the call to the web service and then invoke that service on a separate thread. Using the timeout value on the pub.sync:wait service you can choose how long you wish to wait for the thread to complete.

Search these forums for notifyOnSuccess and / or notifyOnError. Those threads discussed some utility services that you could build to better manage services (flow or java) invoked on their own threads.

Mark

Hi,
I was thinking of a similar approach. But is that the only way around. We had to resort to restarting our IS every time this occurs and we are making huge number of soapHTTP and HTTP calls (like 30K-40K every hour) which resulting quite a few hung threads.

Some one mentioned that there is a timeout as http/soaphttp call level if we have SP3 applied. Can anyone confirm this.

Thanks,
Manju

You can try tuning setting servers watt.net.timeout parameter that can be used for read timeout (IS Outbound request’s).

Check out these articles,it can help:
http://advantage.webmethods.com/article/?id=1614332228
http://advantage.webmethods.com/article/?id=1614325065
http://advantage.webmethods.com/article/?id=SR-1-61259861
http://advantage.webmethods.com/article/?id=SR-1-56771151

HTH,
RMg

Thanks RMG… we decided on going with the server property watt.net.timeout and that seems to have solved our issue…

Glad to know it worked…!!