You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Claus Ibsen (JIRA)" <ji...@apache.org> on 2017/09/13 07:48:01 UTC
[jira] [Resolved] (CAMEL-11772) Sjms with Artemis causes
NullPointerException due to a ClassCastException
[ https://issues.apache.org/jira/browse/CAMEL-11772?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Claus Ibsen resolved CAMEL-11772.
---------------------------------
Resolution: Fixed
Fix Version/s: 2.18.5
Thanks for reporting and the PR
> Sjms with Artemis causes NullPointerException due to a ClassCastException
> -------------------------------------------------------------------------
>
> Key: CAMEL-11772
> URL: https://issues.apache.org/jira/browse/CAMEL-11772
> Project: Camel
> Issue Type: Bug
> Components: camel-sjms
> Affects Versions: 2.19.0, 2.19.1, 2.19.2
> Reporter: Derek Wilhelm
> Assignee: Claus Ibsen
> Fix For: 2.18.5, 2.19.4, 2.20.0
>
> Original Estimate: 2h
> Remaining Estimate: 2h
>
> When using a camel-sjms endpoint with an Apache Artemis broker, the sjms endpoint will throw a NullPointerException in the org.apache.camel.component.sjms.consumer.AbstractMessageHandler.onMessage method. However, this exception is actually masking the real exception within sjms. In SjmsMessage.java the method getDestinationAsString gets called with a javax.jms.Destination object. In this case, it is a org.apache.activemq.artemis.jms.client.ActiveMQDestination. The ActiveMQDestination is neither a javax.jms.Topic nor a javax.jms.Queue. In the getDestinationAsString method in SjmsMessage.java, it first checks to see if the destination is a Topic and then if it is not it blindly casts to a javax.jms.Queue and in this case causes a ClassCastException.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)