You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by "ant elder (Assigned) (JIRA)" <de...@tuscany.apache.org> on 2011/09/28 08:58:45 UTC

[jira] [Assigned] (TUSCANY-3954) Change AsyncJDKInvocationHandler to not use AsyncFaultWrapper

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

ant elder reassigned TUSCANY-3954:
----------------------------------

    Assignee: ant elder
    
> Change AsyncJDKInvocationHandler to not use AsyncFaultWrapper
> -------------------------------------------------------------
>
>                 Key: TUSCANY-3954
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-3954
>             Project: Tuscany
>          Issue Type: Improvement
>    Affects Versions: Java-SCA-2.0
>            Reporter: Greg Dritschler
>            Assignee: ant elder
>            Priority: Minor
>         Attachments: TUSCANY-3954.patch
>
>
> Background:
> When asynchronous invocations are performed using a "non-native" binding, Tuscany creates a callback service that implements the AsyncResponseService interface.  This interface includes the method
> 	public void setWrappedFault(AsyncFaultWrapper w)
> which is used to send an exception response.  The wrapper contains information about the exception class which will be used on the client side to reconstruct the exception.  This is all fine.
> Problem:
> AsyncJDKInvocationHandler also uses the AsyncFaultWrapper for exceptions it encounters.  This does not make sense.  These exceptions are either
>  * runtime exceptions
>  * in the case of invoking a sync service, business exceptions which the databinding framework is responsible for making type-compatible with the client.
> The use of the AsyncFaultWrapper is unnecessary in these cases.  It also can cause problems because the unwrapping process tries to pick a constructor to use to reconstruct the exception, and some exception classes do not implement the standard constructors.
> I am attaching a patch to remove the use of the AsyncFaultWrapper in AsyncJDKInvocationHandler.  All tests pass with this patch.

--
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