You can specify a binding file for code generation like in the wsdl first example. There you can enable the async mapping.
This will generate client code where you have a listener for the response.

Will this help?

<jaxws:bindings wsdlLocation="CustomerService.wsdl"
         xmlns:jaxws="http://java.sun.com/xml/ns/jaxws";
         xmlns:xs="http://www.w3.org/2001/XMLSchema";
         xmlns:jxb="http://java.sun.com/xml/ns/jaxb";
         xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";>
 <jaxws:enableAsyncMapping>true</jaxws:enableAsyncMapping>
</jaxws:bindings>

Greetings

Christian

Coder One schrieb:
Hi,

A webservice call is usually synchronous, so in the case of integrating with 
Camel and using JMS, I actually need an async model.

Would it be possible to configure CXF to route the SOAP to Camel, return 
something to the caller thorough the client stub, and let camel deliver the 
real SOAP response to the app using some listener mechanism at a later time?

Thanks...

--- On Thu, 11/19/09, Christian Schneider <[email protected]> wrote:

From: Christian Schneider <[email protected]>
Subject: Re: CXF SOAP over JMS and Camel/Generic Interceptor
To: [email protected]
Date: Thursday, November 19, 2009, 4:01 PM
There is an example for SOAP / JMS
with CXF and Camel on:
http://camel.apache.org/better-jms-transport-for-cxf-webservice-using-apache-camel.html

If you only want to mess with the SOAP then you can use a
CXF interceptor and do not need o use camel. See:
http://cwiki.apache.org/CXF20DOC/interceptors.html

Greetings

Christian

Coder One schrieb:
interface WebService
{
     String greeting();
}

class WebServiceImpl
{
    public String greeting()
   {
       return("Hello,
world");
    }

}

Using Spring, CXF simple front-end, the client code
just needs a reference the interface WebService and CXF will
simply generate the stub/binding to allow the client to
invoke the server side implementation.
However, I need to pipe in the Camel code in between
at both end-points and intercept the call.  Is that
possible at all?
[CXF-WebService Client] [Camel] [JMS] [Camel]
[CXF-WebService Server]
Rather than Camel, can I intercept the calls and do
the following on both the client and the server sides:
1. Let the SOAP goes through.
2. Modify the SOAP and pass it on.

Any restrictions?  I would greatly appreciate all
points to docs, examples, etc...
Thanks


--

Christian Schneider
---
http://www.liquid-reality.de





Reply via email to