You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Amila Chinthaka Suriarachchi (JIRA)" <ji...@apache.org> on 2007/11/13 10:02:00 UTC

[jira] Resolved: (AXIS2-3218) Client sender connections not cleaned up when AxisFault received.

     [ https://issues.apache.org/jira/browse/AXIS2-3218?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Amila Chinthaka Suriarachchi resolved AXIS2-3218.
-------------------------------------------------

    Resolution: Fixed

resolve the issue

> Client sender connections not cleaned up when AxisFault received.
> -----------------------------------------------------------------
>
>                 Key: AXIS2-3218
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3218
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>          Components: codegen
>    Affects Versions: 1.3, 1.2
>         Environment: Windows XP, Java 5
>            Reporter: Aaron Gourley
>            Assignee: Amila Chinthaka Suriarachchi
>         Attachments: InterfaceImplementationTemplate.xsl
>
>
> I suspect that lines 439-513 of java/modules/codegen/src/org/apache/axis2/wsdl/template/java/InterfaceImplementationTemplate.xsl has a bug.  This bug results in generated stubs not cleaning up their connections properly.
> The following line (491) is only called on a successful request:
> _messageContext.getTransportOut().getSender().cleanup(_messageContext);
> If an AxisFault is thrown, then the message context is not cleaned up and the connection is not closed properly.
> I propose the following fix:
> - Remove line 491
> - Insert the following before line 439 (i.e. before "_operationClient.execute(true);")
>       try {
> - Insert the following before line 514:
>       }finally{
>           _messageContext.getTransportOut().getSender().cleanup(_messageContext);
>       }
> This will force that cleanup be called on the message context after every execution of the operation.  I realize that Axis2 1.3 has added Options.setCallTransportCleanup() method and a ServiceClient.cleanupTransport() method for this (which is good), but this fix might hit one of the root causes of stale connections being left open.
> I'll attach my version of the modified xsl file (used Axis2 1.3 source release as starting point).  Verified that the problem still exists in trunk.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org