camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Aki Yoshida <elak...@googlemail.com>
Subject Re: camel-cxf endpoint in CXF Dispatch mode
Date Fri, 11 Mar 2011 09:09:53 GMT
Hi William,
Yes. I initialy tried out that approach. And in fact, as you saw, I am
using this dummy class internally and programatically adding its
operations to the endpoint. I needed to add the operations because
DummyImpl does not specifiy any information and if there is no
operaiton associated for the endpoint, CxfProducer gets problems at
its process method as it looks for the operaiton:

        BindingOperationInfo boi =
prepareBindingOperation(camelExchange, cxfExchange);

We could handle this special case per call within this process method,
but it was more reasonable to handle this case at the client/endpoint
setup and keep the rest of the processing to run transparently.

This was the reason why I embedded this coding at the endpoint setup.
Another reason for this setup was to hide this ugly DummyImpl name
from the spring configuraiton and make the configuraiton look simpler.

Thanks.

Regards, Aki

2011/3/11 William Tam <email.wtam@gmail.com>:
> Hi Aki,
>
> I recalled my suggestion was to try passing a dummy class in the cxfEndpoint
> config.   It should allow you to send arbitrary payload.  I guess that
> didn't work?   It looks like your patch is doing just that am I missing
> something.
>
> I.e.
>
>  <cxf:cxfEndpoint id="serviceEndpoint"
>                   address="http://localhost:9000/SoapContext/MyPort"
>                   endpointName="s:MyPort"
>                   serviceName="s:MyService"
>                   serviceClass="org.apache.cxf.jaxws.support.DummyImpl">
>    <cxf:properties>
>      <entry key="dataFormat" value="PAYLOAD"/>
>    </cxf:properties>
>  </cxf:cxfEndpoint>
>
> Also, could you elaborate on the purpose of addInvokeOperation()?
>
> Thanks,
> William
>
> On 03/10/2011 01:19 PM, Aki Yoshida wrote:
>>
>> Hi,
>> I added the CXF dispatch mode to the Camel CXF endpoint so that I can
>> ran SOAP intermediary/gateway scenarios over a single CXF endpoint
>> with some CXF features enabled.
>>
>> I attached the patch file and unit test files to CAMEL-3778.
>>
>> In short, you can configure your endpoint like
>>
>>   <cxf:cxfEndpoint id="serviceEndpoint"
>>                   address="http://localhost:9000/SoapContext/MyPort"
>>                   endpointName="s:MyPort"
>>                   serviceName="s:MyService"
>>                   bus="#bus">
>>     <cxf:properties>
>>       <entry key="dataFormat" value="PAYLOAD"/>
>>     </cxf:properties>
>>   </cxf:cxfEndpoint>
>>
>> and send arbitrary SOAP messages over this endpoint while you CXF bus
>> configuraiton can add some features to your processing.
>>
>> I would appreciate if you can give me your feedback.
>>
>> Thanks.
>>
>> Regards, aki
>>
>

Mime
View raw message