I'm using a 3rd party web service that's implemented as SOAP web services.
Per their instructions I used eclipse to generate java stub classes from the WSDL.
After experiencing some long-running requests with them I dug into the generated classes, found where an org.apache.axis.client.Call was being created and invoked. I set a configurable timeout on the Call object.
I can test this by setting the timeout to something unrealistic, like 10 milliseconds. When I do this every request times out as expected.
In production, I'm seeing calls to them take longer than the timeout. As in the timeout is 3 seconds but the execution takes over a minute.
Is there something I'm missing? Maybe I need to dust off my TCP/IP Illustrated books and reacquaint myself with the finer points or maybe it's just something under the covers of the axis code.