camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From mario_horny <mario.ho...@dzbank.de>
Subject Re: getting the in message in a custom processor with dataFormat=PAYLOAD
Date Fri, 14 Nov 2008 16:06:58 GMT

Hi Willem,

works !!
Mario


mario_horny wrote:
> 
> Hi all,
> 
> I have a custom processor that needs to transform a cxf message before it
> is routed to the destination endpoint. The code of the process() method
> looks like that:
> 
> public void process( Exchange e ) {
> 
> Message iMsg = e.getIn();
> 
> msgStr = iMsg.getBody(String.class).toString();
> 
> System.out.println("Received msg=" + msgStr );
> 
> // do the transformation ....
> String transStr = doTransform( msgStr );
> 
> Message oMsg = e.getOut();
> 
> oMsg.setBody( transStr);
> 
> }
> 
> This works pretty fine, if the dataFormat is POJO or MESSAGE (defined in
> the RouteBuilder). In these cases, the Java parameter (POJO) or the whole
> xml message (MESSAGE) are printed out by the println(...) . If the
> dataFormat is PAYLOAD, only the class reference ValidatingStreamReader@xyz
> is printed out.
> 
> I could find no way to get the payload data as a string. I read that I
> need to write an own converter to get the data, but at the end of the day
> my problem is that I could find no way to get the data in any format (I'm
> not fixed to use a string object). 
> I tried to get the body as a Map, InputStream, Collection,
> MessageContentsList... but non of these classes worked. I found out that
> some the classes work for some dataFormats (InputStream works fine for
> MESSAGE, MessageContentsList works fine for POJO), but nothing worked out
> for PAYLOAD. 
> 
> Does anybody have an example how to access the message body for
> dataFormat=PAYLOAD ? Is there a common way to access the body for all
> dataFormats ? 
> 
> Many thanks in advance,
> Mario
> 

-- 
View this message in context: http://www.nabble.com/getting-the-in-message-in-a-custom-processor-with-dataFormat%3DPAYLOAD-tp20457607s22882p20503343.html
Sent from the Camel - Users mailing list archive at Nabble.com.


Mime
View raw message