You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by "Jennifer A Thompson (Created) (JIRA)" <de...@tuscany.apache.org> on 2011/11/01 21:01:32 UTC

[jira] [Created] (TUSCANY-3970) Improve error handling in TransportServiceInterceptor.invoke()

Improve error handling in TransportServiceInterceptor.invoke()
--------------------------------------------------------------

                 Key: TUSCANY-3970
                 URL: https://issues.apache.org/jira/browse/TUSCANY-3970
             Project: Tuscany
          Issue Type: Bug
          Components: SCA Java Runtime
    Affects Versions: Java-SCA-2.x
            Reporter: Jennifer A Thompson
             Fix For: Java-SCA-2.x


In the TransportServiceInterceptor,invoke method, in the first catch block (corresponding to calling invokeResponse), if there is an error or runtime exception, this should be re-thrown. This allows transacted messages to be rolled back.

Also, in the finally block, a new try/catch block should be added around  "((JMSBindingContext)msg.getBindingContext()).closeJmsResponseSession();", so if an error is thrown the resource factory can be used to close the connection:

                try {
                    ((JMSBindingContext)msg.getBindingContext()).closeJmsResponseSession();
                } catch (Throwable t) {
                }
                // Use the resource factory in the binding context to close the response connection,
                // to ensure we use same resource factory used to close response session.
                JMSResourceFactory rf = ((JMSBindingContext)msg.getBindingContext()).getJmsResourceFactory();
                if (rf.isConnectionClosedAfterUse())
                    rf.closeResponseConnection(); 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Closed] (TUSCANY-3970) Improve error handling in TransportServiceInterceptor.invoke()

Posted by "ant elder (Closed) (JIRA)" <de...@tuscany.apache.org>.
     [ https://issues.apache.org/jira/browse/TUSCANY-3970?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

ant elder closed TUSCANY-3970.
------------------------------

    Resolution: Fixed

Done as suggested
                
> Improve error handling in TransportServiceInterceptor.invoke()
> --------------------------------------------------------------
>
>                 Key: TUSCANY-3970
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-3970
>             Project: Tuscany
>          Issue Type: Bug
>          Components: SCA Java Runtime
>    Affects Versions: Java-SCA-2.x
>            Reporter: Jennifer A Thompson
>             Fix For: Java-SCA-2.x
>
>
> In the TransportServiceInterceptor,invoke method, in the first catch block (corresponding to calling invokeResponse), if there is an error or runtime exception, this should be re-thrown. This allows transacted messages to be rolled back.
> Also, in the finally block, a new try/catch block should be added around  "((JMSBindingContext)msg.getBindingContext()).closeJmsResponseSession();", so if an error is thrown the resource factory can be used to close the connection:
>                 try {
>                     ((JMSBindingContext)msg.getBindingContext()).closeJmsResponseSession();
>                 } catch (Throwable t) {
>                 }
>                 // Use the resource factory in the binding context to close the response connection,
>                 // to ensure we use same resource factory used to close response session.
>                 JMSResourceFactory rf = ((JMSBindingContext)msg.getBindingContext()).getJmsResourceFactory();
>                 if (rf.isConnectionClosedAfterUse())
>                     rf.closeResponseConnection(); 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira