Ok, i finally found the solution . 

The main problem is the messageMapper of ODE-SE module : the default
messageMapper is org.apache.ode.jbi.msgmap.ServiceMixMapper. When i try to
send a message to the ODE-SE, the message content is the following :

<ns2:sendNotification
xmlns:ns2=\"http://www.website.com/TaskManagerNotification/\";><Notification><taskId>456</taskId><taskModelNameUri>SaisieCommande</taskModelNameUri><processId>123</processId><action>MyAction</action></Notification></ns2:sendNotification>

And it's work : The ODE-SE module is in ServiceMixMapper, he wait a  message
with no jbi or soap tag.

But, when i want to call a method using BPEL, the cxf-se wait a JBI message,
and the ODE send a classic servicemix wrapped message: an exception appears
during the unpacking .

The solution is to configure the ODE-SU to use a jbiWrapper. First, search
for the apache-ode-jbi-XXX.zip in you $SMX_HOME/hotdeploy, then open it .
Edit the ode-jbi.properties, and change thevalue of key
ode-jbi.messageMapper by the following : 
ode-jbi.messageMapper=org.apache.ode.jbi.msgmap.JbiWsdl11WrapperMapper

now save the file and restart SMX. At this moment, during the call of a
function in the BPEL, le message is correctly wrapped using jbi tags, and
the CXF-SE is able to unpack this message. Now, we have to send JBI wrapped
message to the ODE-SE, an example with the previous message :

<jbi:message
xmlns:jbi=\"http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper\";><jbi:part><ns2:sendNotification
xmlns:ns2=\"http://www.website.com/TaskManagerNotification/\";><Notification><taskId>456</taskId><taskModelNameUri>SaisieCommande</taskModelNameUri><processId>123</processId><action>MyAction</action></Notification></ns2:sendNotification></jbi:part></jbi:message>

Bye :)
-- 
View this message in context: 
http://old.nabble.com/Communication-problem-between-an-ODE-SU-and-a-CXF-SU-tp27063479p27146093.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.

Reply via email to