Hello,

I want to connect some AMQ-queues to web services and got a strange problem.
I'm able to connect directly to the CXF service, but when I use AMQ in front
in conjunction with an "operationName" header Camel doesn't deliver the
response and creates an ExchangeTimedOutException.

OK, I try to clarify. WebServiceA has just one method. WebServiceB has 6
methods.

This works:
from("activemq:wsa").to("cxf:bean:webServiceA");

Status msg = producerTemplate.requestBody("activemq:wsa", params,
Status.class);


This does NOT work (results in a timeout):
from("activemq:wsb").to("cxf:bean:webServiceB");

Map<String, Object> header = new HashMap<String, Object>();
header.put(CxfConstants.OPERATION_NAME, "doSomething");
header.put(CxfConstants.OPERATION_NAMESPACE, "http://.../";);
        
Status msg = producerTemplate.requestBodyAndHeaders("activemq:wsb", params,
header, Status.class);

What strikes me a lot, my TCP/IP monitor shows that a correct request is
created, processed and returned. 

This works:
Status msg =  producerTemplate.requestBodyAndHeaders("cxf:bean:webServiceB",
params, header, WebServiceB.class);

This is the config for the endpoints:
<cxf:cxfEndpoint id="wsa" address="http://localhost:8282/cxf/wsa";
serviceClass="WebServiceA" />
<cxf:cxfEndpoint id="wsb" address="http://localhost:8282/cxf/wsb";
serviceClass="WebServiceB" />

AMQ and CXF are run by FuseESB.

I have the feeling, that I somehow should do something with the headers, but
I have no idea what could be the problem. What I can't understand is what my
TCP/IP monitors tells me and what sounds to me like a bug. Although I think
it should be a quite normal scenario to bridge AMQ and CXF.

Many regards
Jakob




--
View this message in context: 
http://camel.465427.n5.nabble.com/Strange-problem-when-bridging-amq-to-cxf-tp5721182.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to