Ralf Steppacher created CAMEL-6086:
--------------------------------------

             Summary: Unmarshal from ActiveMQ yields warning if message has 
been marshalled before enqueue and contains BigDecimal or BigInteger
                 Key: CAMEL-6086
                 URL: https://issues.apache.org/jira/browse/CAMEL-6086
             Project: Camel
          Issue Type: Bug
          Components: camel-activemq
    Affects Versions: 2.10.3, 2.9.1
            Reporter: Ralf Steppacher


Using activemq-camel version 5.8.0 and starting with Camel version 2.9.1 
unmarshalling from ActiveMQ yields a warning if 

- the exchange body is an object containing a java.math.BigInteger or 
BigDecimal or
- the exchange body is an object containing a hierarchy of objects, one of 
which contains a BigInteger or BigDecimal 

and

- the exchange body has been explicitely marshalled using Java serialization

The warning:

"WARN  ObjectHelper - Cannot find class: [B"


Example route config:

<camel:route id="writeToQueue">
        <camel:from uri="trigger" />
        <!-- Put bean with BigDecimal or BigInteger into exchange body. -->
        <camel:process ref="myProcessor" />
        <camel:convertBodyTo type="com.rs.TheBean"/>
        <camel:marshal ref="javaSerialization" />
        <camel:to ref="queueTo" />
</camel:route>

<camel:route id="receiveFromQueue">
        <!-- Yields warning. -->
        <camel:from uri="queueFrom" />
        <camel:unmarshal ref="javaSerialization" />
        <camel:convertBodyTo type="com.rs.TheBean"/>
        <camel:log message="Received message: ${in.body}" loggingLevel="INFO" 
logName="route:receiveFromQueue" />
</camel:route>

Despite the warning, un-marshalling the message works.

I have not tried other versions of activemq-camel.
ActiveMQ Server is version 5.8.0

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to