uima-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jerry Cwiklik (JIRA)" <...@uima.apache.org>
Subject [jira] [Closed] (UIMA-2304) UIMA AS service serializes Exception object which may contain user defined Exception class not available to the client
Date Thu, 17 May 2012 19:46:07 GMT

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

Jerry Cwiklik closed UIMA-2304.
-------------------------------

       Resolution: Fixed
    Fix Version/s: 2.4.0AS

Turns out that serializing remote service exception into a String is not a good idea. There
are use cases where the client code may need to look at the stack trace to determine the kind
of failure and act on this accordingly. One example of this is the AdvancedFlowController
which can be defined to ignore certain types of Exceptions happening in the remote delegate
and allow a CAS to flow downstream despite the error. Also, there may be existing uima applications
that depend on receiving full stack traces on failed CASes. Added a small fix to uima-as client
to catch any exception that occurs during deserialization, wrap it in a generic uima-as exception
and pass that on to the client.  
                
> UIMA AS service serializes Exception object which may contain user defined Exception
class not available to the client
> ----------------------------------------------------------------------------------------------------------------------
>
>                 Key: UIMA-2304
>                 URL: https://issues.apache.org/jira/browse/UIMA-2304
>             Project: UIMA
>          Issue Type: Bug
>          Components: Async Scaleout
>            Reporter: Jerry Cwiklik
>            Assignee: Jerry Cwiklik
>             Fix For: 2.4.0AS
>
>
> When AE throws an exception UIMA wraps it in AnalysisEngineProcessException which is
handed off to UIMA AS. This exception is subsequently serialized as a java object and sent
in a reply to the client. The client deserializes the cargo back to a java Exception and hands
it off to the application via a callback. The problem is that the Exception stack trace may
include user defined Exception class(es) which are not available to the client thus causing
ClassNotFound while deserializing a reply. Modify UIMA AS service side to serialize an exception
to a String and send that to the client.

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

        

Mime
View raw message