Hi,
Could you explain more about your work flow?
Is it cxf-bc consumer ==> servicemix-camel==>cxf-bc provider?

And there's two times dealProperty get invoked in your camel context, from which one you see lost the javax.jbi.messaging.protocol.headers?
Could you append both output for dealProperty?

Freeman
On 2009-8-11, at 下午1:45, inter wrote:


I used cxf-bc-consumer,cxf-bc-provider and camel like follows:

 --------------------------------------------------------------------
<beans xmlns="http://www.springframework.org/schema/beans";
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
      xsi:schemaLocation="
      http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
      http://activemq.apache.org/camel/schema/spring
http://activemq.apache.org/camel/schema/spring/camel-spring.xsd";>

 <camelContext id="camel"
xmlns="http://activemq.apache.org/camel/schema/spring";>

   <route>
        <from uri="jbi:service:http://server/HelloWorldPre"/>
        <process ref="dealProperty" />
            <to uri="jbi:service:http://server/HelloWorld"/>
            <process ref="dealProperty" />
   </route>
 </camelContext>

<bean id="dealProperty"
class="org.apache.servicemix.tutorial.camel.dealPropertyProcessor"/>
        
</beans>
-----------------------------------------------------------------------

"dealProperty"is a camel-processor to print the exchange's details;

when i send a request to cxf-bc,the processor print this:


JbiMessage:
org .apache .servicemix.jbi.messaging.normalizedmessagei...@1277ffa{properties:
{javax.jbi.messaging.protocol.headers={}}}Exchange[JbiMessage:
org .apache .servicemix.jbi.messaging.normalizedmessagei...@1277ffa{properties:
{javax.jbi.messaging.protocol.headers={}}}]InOut[
 id: ID:192.168.1.27-123073a49d8-4:4
 status: Active
 role: provider
 service: {http://server}HelloWorldPre
 endpoint: camel192-168-1-27-123073a49d8-30-0
 operation: {http://server}sayHello
 in: <?xml version="1.0" encoding="UTF-8"?><jbi:message
xmlns:jbi="http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper";
xmlns:msg="http://server"; xmlns:xsd="http://www.w3.org/2001/XMLSchema";
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; name="sayHelloRequest"
type="msg:sayHelloRequest" version="1.0"><jbi:part><q0:sayHello
xmlns:q0="http://server";>
<q0:in0>test</q0:in0>
</q0:sayHello></jbi:part></jbi:message>


Take care of the bold lines, the "javax.jbi.messaging.protocol.headers" was
empty.
But should not it contain http heads?

if I want to get the client's ip address in camel-processor,what should i
do?

--
View this message in context: 
http://www.nabble.com/When-JBiMsg-sent-from-cxf-bc-to-camel%2Cjavax.jbi.messaging.protocol.headers-was-lost.-tp24912015p24912015.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.



--
Freeman Fang
------------------------
Open Source SOA: http://fusesource.com

Reply via email to