As a courtesy I'll post back my resolution. It turns out the Tomcat
connector for service B was configured to allow only 1 connection over
a keep-alive connection instead of the default. Apparently the Axis2
client proxy wasn't able to handle this. I change the setting back to the
default and the problem appears to have gone away.


On Tue, Jun 2, 2009 at 11:54 AM, Andy Gasser <andrew.gas...@gmail.com> wrote:
> As an update, I added the code to set the timeout using
> options.setTimeOutInMilliSeconds on the client. I don't think we're
> seeing the error as often now, but we're still getting it.
>
>
> On Tue, Jun 2, 2009 at 11:12 AM, Andy Gasser <andrew.gas...@gmail.com> wrote:
>> I apologize if I posted this more than once, I accidentally tried to post
>> before confirming my subscription.
>>
>> I have an Axis2 web service that is calling another Axis2 web service
>> on a separate server via a client proxy. I'm running using the Axis2
>> web app in Tomcat on both servers. To make this easier let's say
>> service A calls service B. Periodically SocketExceptions are being
>> thrown in service A while calling Service B indicating that the
>> connection was reset. Looking at the stack trace I can see that Axis2
>> is in the BStub.fromOM method calling service B.
>>
>> We didn't have this problem when in development and we have since gone
>> to production, making it harder to troubleshoot. Service A is writing
>> an exception trace to the Tomcat log, but Service B is not. I think
>> the issue is that the client proxy is not waiting long enough for the
>> response, but I'm shooting in the dark.
>>
>> Since we are in production a code change is more difficult to deploy,
>> so changing configuration is preferred. I tried adding these
>> parameters in the axis.xml file under the http transportSender to set
>> the timeout to 10 minutes, but it didn't fix the problem:
>>         <parameter name="SO_TIMEOUT" locked="false">600000</parameter>
>>         <parameter name="CONNECTION_TIMEOUT" 
>> locked="false">600000</parameter>
>>
>> It's my understanding that the transportSender settings should affect
>> the defaults for the call from service A to service B so I don't have
>> to configure the client in code, but it really isn't clear to me. If
>> you have any suggestions or can point me to some documentation this is
>> more complete than
>> http://ws.apache.org/axis2/1_4_1/http-transport.html I would
>> appreciate it!
>>
>

Reply via email to