All,

As part of the web services I am deploying, I have some methods that take a
while to complete (in truth, they return so much data that it takes a while
to accumulate all of that).

When I was deploying Axis 1.2beta2 on the server and client side, everything
worked well with whatever defaults Axis uses out of the box.

When I changed over to Axis 1.2beta3 on the server and client side, I
started getting socket time-outs (see trace below). The errors are not
deterministic - when there's a failure, it's _always_ one of these long
methods that fails, but it may be a different method each time.

On reading the source code for 1.2beta2 and 1.2beta3 and doing some
judicious diffs, the problem seems to be the following difference:

In 1.2b2, we had: org.apache.axis.encoding.DeserializationContextImpl:158
    EnvelopeBuilder builder = new EnvelopeBuilder(messageType, getSOAPConstants());
In 1.2b3, we have: org.apache.axis.encoding.DeserializationContext:159
    EnvelopeBuilder builder = new EnvelopeBuilder(messageType, null);

Any ideas whether this change could be causing the problem? It looks to my
naive eyes that in 1.2beta3 we've stopped reading in SOAP constants. Ergo,
even if I change my web.xml to include a session time-out snippet asking for
30-minute session time-outs, there's no difference - I still get similar
errors.

Anand

[exec] Testcase: testMyService took 279.665 sec
[exec]     Caused an ERROR
[exec] java.net.SocketTimeoutException: Read timed out
[exec] AxisFault
[exec]  faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
[exec]  faultSubcode:
[exec]  faultString: java.net.SocketTimeoutException: Read timed out
[exec]  faultActor:
[exec]  faultNode:
[exec]  faultDetail:
[exec]     {http://xml.apache.org/axis/}hostname:palladium.abc.local

[exec] java.net.SocketTimeoutException: Read timed out
[exec]     at 
org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:221)
[exec]     at 
org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:128)
[exec]     at 
org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1077)
                                                      [exec]     at 
org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
[exec]     at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown 
Source)
[exec]     at 
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown
 Source)                                          [exec]     at 
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
[exec]     at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
[exec]     at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
[exec]     at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
[exec]     at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
[exec]     at javax.xml.parsers.SAXParser.parse(SAXParser.java:345)
[exec]     at 
org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:225)
[exec]     at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:645)
[exec]     at org.apache.axis.Message.getSOAPEnvelope(Message.java:424)
[exec]     at 
org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
[exec]     at org.apache.axis.client.AxisClient.invoke(AxisClient.java:173)
[exec]     at org.apache.axis.client.Call.invokeEngine(Call.java:2735)
[exec]     at org.apache.axis.client.Call.invoke(Call.java:2718)
[exec]     at org.apache.axis.client.Call.invoke(Call.java:2394)
[exec]     at org.apache.axis.client.Call.invoke(Call.java:2317)
[exec]     at org.apache.axis.client.Call.invoke(Call.java:1774)
[exec]     at 
com.abc.ws.stubs.DataServicesWrapperSoapBindingStub.getOutputAttach(DataServicesWrapperSoapBindingStub.java:437)
[exec]     at com.abc.ws.test.MyServiceTest.actual4WSDLTests(MyServiceTest.java:851)
[exec]     at com.abc.ws.test.MyServiceTest.testMyService(MyServiceTest.java:242)
[exec]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[exec]     at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[exec]     at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

Reply via email to