axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Lien Tran (JIRA)" <j...@apache.org>
Subject [jira] Updated: (AXIS2-3265) AxisCallback#onComplete is not called in OutInAxisOperation.NonBlockingInvocationWorker#run
Date Fri, 24 Apr 2009 18:25:30 GMT

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

Lien Tran updated AXIS2-3265:
-----------------------------

    Comment: was deleted

(was: I'm not sure how this is fixed.  I mentioned a fix for this in https://issues.apache.org/jira/browse/AXIS2-4232
)

> AxisCallback#onComplete is not called in OutInAxisOperation.NonBlockingInvocationWorker#run
> -------------------------------------------------------------------------------------------
>
>                 Key: AXIS2-3265
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3265
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>          Components: kernel
>    Affects Versions: 1.3
>            Reporter: Alexander Koezle
>            Assignee: Deepal Jayasinghe
>            Priority: Minor
>
> Hi, 
> I'm trying to refactor my existing code and replace deprecated Callback interface with
the  new AxisCallback.  
> I miss the call of AxisCallback#onComplete() while invoking of a non blocking service
in OutInAxisOperation.NonBlockingInvocationWorker#run. I expect the onComplete call after
the call of onMessage() or onFault() as it already done for Callback instance (setComplete()).
> I mean these lines:
> {code:}
>         public void run() {
>             try {
>                 // send the request and wait for response
>                 MessageContext response = send(msgctx);
>                 // call the callback
>                 if (response != null) {
>                     SOAPEnvelope resenvelope = response.getEnvelope();
>                     SOAPBody body = resenvelope.getBody();
>                     if (body.hasFault()) {
>                         // If a fault was found, create an AxisFault with a MessageContext
so that
>                         // other programming models can deserialize the fault to an alternative
form.
>                         AxisFault fault = new AxisFault(body.getFault(), response);
>                         if (callback != null) {
>                             callback.onError(fault);
>                         } else {
>                             axisCallback.onError(fault);
>                         }
>                     } else {
>                         if (callback != null) {
>                             AsyncResult asyncResult = new AsyncResult(response);
>                             callback.onComplete(asyncResult);
>                         } else {
>                             axisCallback.onMessage(response);
>                         }
>                     }
>                 }
>             } catch (Exception e) {
>                 if (callback != null) {
>                     callback.onError(e);
>                 } else {
>                     axisCallback.onError(e);
>                 }
>             } finally {
>                 if (callback != null) {
>                     callback.setComplete(true);
>                 }
>             }
>         }
> {code}

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


Mime
View raw message