[ 
https://issues.apache.org/jira/browse/ARTEMIS-3317?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Justin Bertram updated ARTEMIS-3317:
------------------------------------
    Description: 
When using an OpenWire producer & consumer setting any of these properties will 
cause a {{ClassCastException}} on the broker and the message will not be 
delivered to the consumer:
* {{__HDR_BROKER_PATH}}
* {{__HDR_CLUSTER}}
* {{__HDR_USER_ID}}

{noformat}
WARN  [org.apache.activemq.artemis.core.server] Error during message dispatch: 
java.lang.ClassCastException: org.apache.activemq.artemis.api.core.SimpleString 
cannot be cast to java.lang.String
        at 
org.apache.activemq.artemis.core.protocol.openwire.OpenWireMessageConverter.toAMQMessage(OpenWireMessageConverter.java:593)
 [artemis-openwire-protocol-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
        at 
org.apache.activemq.artemis.core.protocol.openwire.OpenWireMessageConverter.createMessageDispatch(OpenWireMessageConverter.java:502)
 [artemis-openwire-protocol-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
        at 
org.apache.activemq.artemis.core.protocol.openwire.amq.AMQConsumer.handleDeliver(AMQConsumer.java:268)
 [artemis-openwire-protocol-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
        at 
org.apache.activemq.artemis.core.protocol.openwire.amq.AMQSession.sendMessage(AMQSession.java:309)
 [artemis-openwire-protocol-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
        at 
org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.deliverStandardMessage(ServerConsumerImpl.java:1169)
 [artemis-server-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
        at 
org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.proceedDeliver(ServerConsumerImpl.java:508)
 [artemis-server-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
        at 
org.apache.activemq.artemis.core.server.impl.QueueImpl.proceedDeliver(QueueImpl.java:3746)
 [artemis-server-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
        at 
org.apache.activemq.artemis.core.server.impl.QueueImpl.deliver(QueueImpl.java:3049)
 [artemis-server-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
        at 
org.apache.activemq.artemis.core.server.impl.QueueImpl.access$2400(QueueImpl.java:126)
 [artemis-server-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
        at 
org.apache.activemq.artemis.core.server.impl.QueueImpl$DeliverRunner.run(QueueImpl.java:4121)
 [artemis-server-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
        at 
org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:42)
 [artemis-commons-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
        at 
org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:31)
 [artemis-commons-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
        at 
org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:65)
 [artemis-commons-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 
[rt.jar:1.8.0_282]
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 
[rt.jar:1.8.0_282]
        at 
org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
 [artemis-commons-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
{noformat}

> OpenWire property conversion can cause ClassCastException
> ---------------------------------------------------------
>
>                 Key: ARTEMIS-3317
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-3317
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>            Reporter: Justin Bertram
>            Assignee: Justin Bertram
>            Priority: Major
>
> When using an OpenWire producer & consumer setting any of these properties 
> will cause a {{ClassCastException}} on the broker and the message will not be 
> delivered to the consumer:
> * {{__HDR_BROKER_PATH}}
> * {{__HDR_CLUSTER}}
> * {{__HDR_USER_ID}}
> {noformat}
> WARN  [org.apache.activemq.artemis.core.server] Error during message 
> dispatch: java.lang.ClassCastException: 
> org.apache.activemq.artemis.api.core.SimpleString cannot be cast to 
> java.lang.String
>       at 
> org.apache.activemq.artemis.core.protocol.openwire.OpenWireMessageConverter.toAMQMessage(OpenWireMessageConverter.java:593)
>  [artemis-openwire-protocol-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
>       at 
> org.apache.activemq.artemis.core.protocol.openwire.OpenWireMessageConverter.createMessageDispatch(OpenWireMessageConverter.java:502)
>  [artemis-openwire-protocol-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
>       at 
> org.apache.activemq.artemis.core.protocol.openwire.amq.AMQConsumer.handleDeliver(AMQConsumer.java:268)
>  [artemis-openwire-protocol-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
>       at 
> org.apache.activemq.artemis.core.protocol.openwire.amq.AMQSession.sendMessage(AMQSession.java:309)
>  [artemis-openwire-protocol-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
>       at 
> org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.deliverStandardMessage(ServerConsumerImpl.java:1169)
>  [artemis-server-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
>       at 
> org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.proceedDeliver(ServerConsumerImpl.java:508)
>  [artemis-server-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
>       at 
> org.apache.activemq.artemis.core.server.impl.QueueImpl.proceedDeliver(QueueImpl.java:3746)
>  [artemis-server-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
>       at 
> org.apache.activemq.artemis.core.server.impl.QueueImpl.deliver(QueueImpl.java:3049)
>  [artemis-server-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
>       at 
> org.apache.activemq.artemis.core.server.impl.QueueImpl.access$2400(QueueImpl.java:126)
>  [artemis-server-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
>       at 
> org.apache.activemq.artemis.core.server.impl.QueueImpl$DeliverRunner.run(QueueImpl.java:4121)
>  [artemis-server-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
>       at 
> org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:42)
>  [artemis-commons-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
>       at 
> org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:31)
>  [artemis-commons-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
>       at 
> org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:65)
>  [artemis-commons-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
>       at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>  [rt.jar:1.8.0_282]
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>  [rt.jar:1.8.0_282]
>       at 
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
>  [artemis-commons-2.16.0.redhat-00012.jar:2.16.0.redhat-00012]
> {noformat}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to