Hi,

Seems you miss my previous answer...

You should use cxf consumer out interceptor or cxf provider out interceptor.
Freeman
On 2009-8-12, at 下午4:54, inter wrote:



Hi,
I tried a provide-IN-interceptor, and get MessageExchange in two ways:

"message.getContent(MessageExchange.class)"

"message.get(MessageExchange.class)"

Both of them returned null.

Waiting for help...............


Freeman Fang wrote:

Use Phase.POST_INVOKE should work

Freeman

Should i try to get it with a  cxf-provider-in-interceptor?
In which phase should i di it?

Freeman Fang wrote:


On 2009-8-11, at 下午5:51, inter wrote:



Does it only contain soapheaders?
I have considered it containing http heades at least.
Then how can i get client's ip and access uri in a camel processor?
I just want to record a client's in-time and out-time and it's ip
address.
I know I can do that with a cxf in-interceptor and a  out-
interceptor,but I
have no way to  ensure the both records were generated by the same
request.
In camel-processor,i can use the exchange id to match them,but I
can't get
the ip and request uri.
Using In/Out cxf interceptors you also can use
MessageExchange .getExchangeId() to match them,

from the cxf message in the interceptors, do like
MessageExchange exchange = message
                   .getContent(MessageExchange.class);

to get MessageExchage

Freeman

Freeman,would you like to give me some ideas?


Freeman Fang wrote:

Hi,

That's because there's no soap headers in your message at all per
your
wsdl model

Freeman
On 2009-8-11, at 下午3:23, inter wrote:


I debug it in eclipse and found  that:

the "javax.jbi.messaging.protocol.headers" property was set in
org.apache.servicemix.cxfbc.interceptors.JbiInInterceptor

normalizedMessage.setProperty(CxfJbiConstants.PROTOCOL_HEADERS,
headers);


heards is empty,which is from  message.getHeaders

public List<Header> getHeaders() {
    List<Header> heads =
CastUtils.cast((List<?>)get(Header.HEADER_LIST));
    if (heads == null) {
        heads = new ArrayList<Header>();
        put(Header.HEADER_LIST, heads);
    }
    return heads;
}

it is empty,too.    It's strange.
--
View this message in context:
http://www.nabble.com/When-JBiMsg-sent-from-cxf-bc-to-camel%2Cjavax.jbi.messaging.protocol.headers-was-lost.-tp24912015p24912928.html
Sent from the ServiceMix - User mailing list archive at
Nabble.com.



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




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



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




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



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




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



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

Reply via email to