We have a camel route which uses the length of exchange message body to
determine data types. It works fine when the body contains a string or array
of objects, but if it contains array of primitive types, it only returns 1
as length. Below is a simplified version of the route:

 <route id="oceanview-test-body">
        <from uri="timer://test?fixedRate=true&amp;period=10000"/>
        <to uri="bean:utilBean?method=setDataInbody"/>
        <log loggingLevel="INFO" message="test data class ${body.class.name},
length [${body.length}]" logName="TEST"/>
 </route>

I tried to set String, array of Strings, byte, int and Integer in method
setDataInBody, the result from String, array of String and Integer are
correct. For array of int and byte it always shows 1 as body.length.

Does anyone know why arrays of primitive types don't return correct array
length in camel exchange body?

Thanks in advance!





--
View this message in context: 
http://camel.465427.n5.nabble.com/Body-Object-in-Camel-Exchange-tp5789051.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to