I have used this feature few years back, but after that I never tried. 
If the same thing work for the client side (stand alone application) I
do not see a reason why that does not work at the server side. Because,
we use the same code at both sides.

If this does not work, then it should be a  bug in Axis2 code base, so
please create a JIRA and attached code to reproduce the issue.

Thanks,
Deepal
>
> Dear all,
>
>  
>
> I'm using the Axis2 ServiceClient in order to send a non-blocking
> request using "separate listeners".
>
>  
>
> The ServiceClient is used by a thread behind a Axis Web Service. My
> code works fine as a single application, but, when behind the Axis
> Service, I cannot receive the Callback.
>
> The possible problem may come from the fact that the ServiceClient
> creates a listener precisely on the port used by the WPS, and thus, I
> suppose that the Axis Service (or web.xml) should "forward" the
> request to the right listener, but I don't know how.
>
>  
>
> Any help is very welcome.
>
>  
>
> Note that Axis2 is embedded into an existing application
> (http://www.developer.com/services/article.php/3777111/Embedding-Apache-Axis2-into-Existing-Applications.htm).
>
>  
>
> Thanks,
>
>  
>
> Christophe.
>
>  
>
> Code used :
>
>                                                 setExecuteClient(new
> ServiceClient()) ;
>
> Options options = *new*Options();
>
>                   // set the workflow endpoint
>
>                  
> options.setTo(*new*EndpointReference(processesPrefix+algorithmID));
>
>                   options.setUseSeparateListener(*true*);
>
>                   options.setAction("urn:executeResponseCallback");
>
>                  
> options.setTransportInProtocol(Constants./TRANSPORT_HTTP/);
>
>                   // use WS-Adressing (to perform asynchronous request)
>
>                   /getExecuteClient/().engageModule("addressing");
>
>                   /getExecuteClient/().setOptions(options);
>
>                   // get the callback manager
>
>                   CallbackManager callback = *new*CallbackManager(*this*);
>
>                   // send the request
>
>                   // Following doesnt work
>
>                  
> /LOGGER/.info(((Document)doc.getDomNode()).getDocumentElement());
>
>                  
> /getExecuteClient/().sendReceiveNonBlocking(XMLUtils./toOM/(
> ((Document)doc.getDomNode()).getDocumentElement()), callback);
>
>                   waitCallback();
>
>  
>

Reply via email to