We have a SOAP service. We generated a java client using Eclipse.
We are facing performance issues while consuming the webservice. The web service takes extremely long time to run. Each service call takes about 300+ seconds. It doesn't matter how fast the computer is. If I run this on my very slow machine it takes the same amount of time and same response time even if it is run it on a faster working machine.
We dont see the issue when we run the same in SoapUI since it takes less than 20 seconds to respond. So our endpoint URL is not causing any issues and we are getting correct return values.
1.We referred the answer posted in other forums with suggestions to use CommonsHttpSender. In our application we use org.apache.axis.transport.http.HTTPSender and if we use CommonsHttpSender, it will lead to few other issues. So that solution is ruled out for us.
2.We had a look into the code in org.apache.axis.encoding.DeserializationContext and we observed that the parse() call takes longer times to respond(300+ seconds). Looks like the parse() method itself is taking longer time to parse and causing longer delay in the response. Any particular reasons why the parse() method take longer time to parse and respond? And can anyone post the code to print inputSource [org.xml.sax.InputSource] inside parse() method of DeserializationContextso that we can check whether the xml header part or body part is consuming time.
We are using: Axis 1.4 and jre6, its an HTTPS connection and we are connecting via a proxy. Please suggest ways to find where the issue is and how to fix the issue.