Interestingly, if I issue a synchronous command to the same webservice it
works fine, but the client shouldnt wait as its in a for loop and has to
send many similar requests to the webservice. The webservice takes 5 mins
minimum to process one request sent by the client. That s why I want to send
the all the requests asynchronously and in the callback handler, want to
handle the responses one by one. I hope the use case is clear.

The other thing which is worth mentioning is that I am using jboss i.e. my
client resides inside an ejb3 bean. It comes to my mind that maybe jboss 4.2
has some default value for socket or connection timeout. Once the timeout
expires, the request cannot be completed. I am not sure if this is the case.
What do you suggest?

On Fri, Jul 25, 2008 at 9:31 AM, Deepal jayasinghe <[EMAIL PROTECTED]>wrote:

> As we can see thats a problem with the connection , can you please try
> whether you can access that following link
> http://hp170408.sol.prytaniagroup.com/DMTService/Service.svc
>
> Thank you!
> Deepal
>
> Hi
>>  I am very new to Axis 2 (5 days) and am trying to implement an
>> asynchronous non blocking client to a .net webservice. I know its very
>> difficult to address the problem this way, but I shall be highly obliged
>> with your responses. My client code is as under
>>
>> DMTServiceStub dmtStub =
>>
>> *new* DMTServiceStub();
>>
>> dmtStub._getServiceClient().engageModule(Constants.
>>
>> /MODULE_ADDRESSING/);
>>
>> dmtStub._getServiceClient().getOptions().setUseSeparateListener(
>>
>> *true*); RunAnalysisDocument runAnalysisEnvelope =
>> RunAnalysisDocument.Factory./newInstance/();
>>
>> DMTServiceCallbackHandler callback =
>>
>> *new* DMTServiceCallbackHandler(*null*){ *public* *void*
>> receiveResultRunAnalysis(RunAnalysisResponseDocument resp){ /log/.info("Call
>> back, The run id is " +
>> resp.getRunAnalysisResponse().getRunAnalysisResult().getRunID());
>>
>> }
>>
>> *public* *void* receiveErrorRunAnalysis(Exception e){ /log/.info("Error
>> received " + e);
>>
>> }
>>
>> };
>>
>> *for*(Long key: dealXMLFileStrings.keySet())
>>
>> {
>>
>> //send data to webservices
>>
>> RunAnalysis runAnalysisRequest = RunAnalysis.Factory./newInstance/();
>>
>> runAnalysisRequest.setDealXml((String)dealXMLFileStrings.get(key).get(0));
>>
>> runAnalysisRequest.setAnalysisName(
>>
>> "StochasticRun");
>>
>> runAnalysisEnvelope.setRunAnalysis(runAnalysisRequest);
>>
>> dmtStub.startRunAnalysis(runAnalysisEnvelope, callback);
>>
>> /log/.info("The client is free now");
>>
>> }
>>
>> *The output on console is *
>>
>> 16:44:27,020 INFO [ModuleDeployer] Deploying module: addressing-1.3
>>
>> 16:44:27,035 INFO [DefaultConnectionListener] Listening on port 6060
>>
>> 16:44:27,035 INFO [PopulateAnalysisResultsBean] The client is free now
>>
>> 16:44:27,238 INFO [HttpMethodBase] Discarding unexpected response:
>> HTTP/1.1 100 Continue
>>
>> 16:44:57,755 INFO [HTTPSender] Unable to sendViaPost to url[
>> http://hp170408.sol.prytaniagroup.com/DMTService/Service.svc]
>>
>> _
>>
>> java.net.SocketTimeoutException
>>
>> _: Read timed out
>>
>> at java.net.SocketInputStream.socketRead0(
>>
>> _Native Method_)
>>
>> at java.net.SocketInputStream.read(
>>
>> _SocketInputStream.java:129_)
>>
>> at java.io.BufferedInputStream.fill(
>>
>> _BufferedInputStream.java:218_)
>>
>> at java.io.BufferedInputStream.read(
>>
>> _BufferedInputStream.java:235_)
>>
>> at org.apache.commons.httpclient.HttpParser.readRawLine(Unknown Source)
>>
>> at org.apache.commons.httpclient.HttpParser.readLine(Unknown Source)
>>
>> at org.apache.commons.httpclient.HttpConnection.readLine(Unknown Source)
>>
>> at
>> org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$HttpConnectionAdapter.readLine(Unknown
>> Source)
>>
>> at org.apache.commons.httpclient.HttpMethodBase.readStatusLine(Unknown
>> Source)
>>
>> at org.apache.commons.httpclient.HttpMethodBase.readResponse(Unknown
>> Source)
>>
>> at org.apache.commons.httpclient.HttpMethodBase.execute(Unknown Source)
>>
>> at
>> org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(Unknown
>> Source)
>>
>> at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(Unknown
>> Source)
>>
>> at org.apache.commons.httpclient.HttpClient.executeMethod(Unknown Source)
>>
>> at org.apache.commons.httpclient.HttpClient.executeMethod(Unknown Source)
>>
>> at org.apache.axis2.transport.http.AbstractHTTPSender.executeMethod(
>>
>> _AbstractHTTPSender.java:520_)
>>
>> at org.apache.axis2.transport.http.HTTPSender.sendViaPost(
>>
>> _HTTPSender.java:191_)
>>
>> at org.apache.axis2.transport.http.HTTPSender.send(
>>
>> _HTTPSender.java:77_)
>>
>> at
>> org.apache.axis2.transport.http.CommonsHTTPTransportSender.writeMessageWithCommons(
>>
>> _CommonsHTTPTransportSender.java:327_)
>>
>> at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(
>>
>> _CommonsHTTPTransportSender.java:206_)
>>
>> at
>> org.apache.axis2.engine.AxisEngine$TransportNonBlockingInvocationWorker.run(
>>
>> _AxisEngine.java:516_)
>>
>> at
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(
>>
>> _ThreadPoolExecutor.java:665_)
>>
>> at
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(
>>
>> _ThreadPoolExecutor.java:690_)
>>
>> at java.lang.Thread.run(
>>
>> _Thread.java:595_)
>>
>> 16:44:57,755 INFO [AxisEngine] [MessageContext:
>> logID=urn:uuid:BDB72D53CA5246C9701216917897775] Read timed out
>>
>> 16:44:57,755 INFO [PopulateAnalysisResultsBean] Error received
>> org.apache.axis2.AxisFault: Read timed out
>>
>> 16:45:00,552 INFO [STDOUT] [SimpleHTTPServer] Stop called
>>
>> 16:45:00,552 INFO [SimpleHttpServer] Shut down connection listener
>>
>> 16:45:00,552 INFO [SimpleHttpServer] Shut down HTTP processors
>>
>> 16:45:00,552 INFO [SimpleHttpServer] HTTP protocol handler shut down
>>
>> *I generate my proxy through the following task*
>>
>> <target name="ConfigureDMTWebservice" description="Generates glue code for
>> DMT Web service"> <mkdir dir="src/gen-src-wsdl"/> <java
>> classname="org.apache.axis2.wsdl.WSDL2Java" fork="true"> <classpath
>> refid="project.classpath"/> <arg value="-uri"/> <arg
>> file="src/wsdl/DMTServiceOld.wsdl"/> <arg value="-d"/> <arg
>> value="xmlbeans"/> <arg value="-o"/> <arg file="src/gen-src-wsdl"/> </java>
>> <mkdir dir="src/gen-src-wsdl/classes"/> <move
>> todir="src/gen-src-wsdl/classes"> <fileset dir="src/gen-src-wsdl/resources">
>> <include name="**/*schema*/**/*.class"/> <include
>> name="**/*schema*/**/*.xsb"/> </fileset> </move> <javac
>> srcdir="src/gen-src-wsdl" destdir="src/gen-src-wsdl/classes"
>> deprecation="false" failonerror="true" debug="true"> <classpath
>> refid="project.classpath"/> </javac> <jar
>> jarfile="../javalib/prytania/dmtwebservice.jar" > <fileset
>> dir="src/gen-src-wsdl/classes" /> </jar> </target>
>>
>> Despite following all the steps for true asynchronous messaging I get a
>> time out problem. Can anyone please guide me with it?
>>
>>
>
> --
> Thanks,
> Deepal
> ................................................................
> http://blogs.deepal.org/
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

Reply via email to