2 Replies Latest reply on Jan 14, 2009 3:33 AM by Alessio Soldano

    javax.xml.ws.soap.SOAPFaultException: Read timed out - Does

    R B Newbie

      Hi,

      I am using jboss eap 4.3 and jboss-ws. My application exposes a web service implemented as a servlet.
      I also have a web service client that invokes the web service. So far everything works okay.
      I then started load testing the web service by submitting a number of simultaneously requests. (I wrote a standalone application to do this). I noticed that most of the times all the submitted requests are not processed by the web service. For ex. if I run the test with 25 simultaneous requests, only 22 get processed. The numbers are not consistent and vary on each run. I also noticed the following errors returned by the web service for some client requests:


      javax.xml.ws.soap.SOAPFaultException: Read timed out
       at org.jboss.ws.core.jaxws.SOAPFaultHelperJAXWS.getSOAPFaultException(SOAPFaultHelperJAXWS.java:69)
       at org.jboss.ws.core.jaxws.binding.SOAP11BindingJAXWS.throwFaultException(SOAP11BindingJAXWS.java:109)
       at org.jboss.ws.core.CommonSOAPBinding.unbindResponseMessage(CommonSOAPBinding.java:553)
       at org.jboss.ws.core.CommonClient.invoke(CommonClient.java:371)
       at org.jboss.ws.core.jaxws.client.ClientImpl.invoke(ClientImpl.java:243)
       at org.jboss.ws.core.jaxws.client.ClientProxy.invoke(ClientProxy.java:164)
       at org.jboss.ws.core.jaxws.client.ClientProxy.invoke(ClientProxy.java:150)
      


      The following exception is also seen:
      javax.xml.ws.WebServiceException: java.io.IOException: Could not transmit message
       at org.jboss.ws.core.jaxws.client.ClientImpl.handleRemoteException(ClientImpl.java:317)
       at org.jboss.ws.core.jaxws.client.ClientImpl.invoke(ClientImpl.java:255)
       at org.jboss.ws.core.jaxws.client.ClientProxy.invoke(ClientProxy.java:164)
      ........................
      
      Caused by: java.io.IOException: Could not transmit message
       at org.jboss.ws.core.client.RemotingConnectionImpl.invoke(RemotingConnectionImpl.java:204)
       at org.jboss.ws.core.client.SOAPRemotingConnection.invoke(SOAPRemotingConnection.java:77)
       at org.jboss.ws.core.CommonClient.invoke(CommonClient.java:337)
       at org.jboss.ws.core.jaxws.client.ClientImpl.invoke(ClientImpl.java:243)
       ... 11 more
      Caused by: org.jboss.remoting.CannotConnectException: Can not connect http client invoker.
       at org.jboss.remoting.transport.http.HTTPClientInvoker.useHttpURLConnection(HTTPClientInvoker.java:333)
       at org.jboss.remoting.transport.http.HTTPClientInvoker.transport(HTTPClientInvoker.java:135)
       at org.jboss.remoting.MicroRemoteClientInvoker.invoke(MicroRemoteClientInvoker.java:122)
       at org.jboss.remoting.Client.invoke(Client.java:1634)
       at org.jboss.remoting.Client.invoke(Client.java:548)
       at org.jboss.ws.core.client.RemotingConnectionImpl.invoke(RemotingConnectionImpl.java:183)
       ... 14 more
      Caused by: java.io.IOException: Error writing to server
       at sun.net.www.protocol.http.HttpURLConnection.writeRequests(Unknown Source)
       at sun.net.www.protocol.http.HttpURLConnection.writeRequests(Unknown Source)
       at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
       at java.net.HttpURLConnection.getResponseCode(Unknown Source)
       at org.jboss.remoting.transport.http.HTTPClientInvoker.useHttpURLConnection(HTTPClientInvoker.java:280)
       ... 19 more
      


      I was just wondering if the web service times out under load. If so, is there some way of increasing the timeout?
      Another point worth mentioning here is that the task performed by the web service is time consuming. So could it be the case that some time consuming web service calls cause a timeout?