I am using cxf component to proxy one webservce to another. 
The route's logical is very simple: receiving the soap-xml,  transform the
soap xml element(if the wsdls of two webservice are not exactly same),  then
send the transformed xml to another webservice;

But unfortunately in camel, this is not so simple.
Camel-CXF Producer  always ask for setting the operation-name (sometimes,
producer will use the operation name from camel-cxf consumer), this is
un-necessary trivial details for the user to deal with QName of wsdl
operation;

Actually, I think the PayLoad model of Camel-Cxf, provide the mechanism for
user to deal with soap protocol; 
Because Web Service Specification has define the mechanism about how to
match soap-message with WSDL operation, so the wsdl operation name  should
be handled by the SOAP Engine(CXF), not be handled by the user; 

That's to say: camel-cxf should  rely on the CXF engine to match the soap
message.  So when the user can give the correct xml data, the camel-cxf
producer could send it to web-service; 

While I am not sure if this opinion is suitable for camel, but it truly
simplified the usage of pay-load model for web service proxy usage.


Reply via email to