daves created ARTEMIS-3437:
------------------------------
Summary: java.lang.NumberFormatException STOMP/AMQP interop
Key: ARTEMIS-3437
URL: https://issues.apache.org/jira/browse/ARTEMIS-3437
Project: ActiveMQ Artemis
Issue Type: Bug
Components: AMQP
Affects Versions: 2.18.0
Environment: win10 21h1 x64
jdk-15.0.1
Artemis 2.18.0
Reporter: daves
I’ve a client which sends STOMP messages to a Artemis broker (2.18.0).
The server is currently consuming the messages using STOMP as well.
I’m not happy with my STOMP library and there are no good alternatives.
Therefore, I would like to switch to AMQP for the server.
…as far as I understand the client and server can use a different
protocol…right?
Consuming messages with the new AMQP code works…but after a few messages the
broker stops sending new messages to my client. The current implementation
consumes one message at a time and sends a accept after each message…
In the Artemis Log I can find entry like this when the broker stops sending
messages to my AMQP client:
{code:java}
2021-08-20 19:40:54,946 DEBUG
[org.apache.activemq.artemis.protocol.amqp.converter.coreWrapper.CoreMessageWrapper]
null: java.lang.NumberFormatException: null at
java.base/java.lang.Integer.parseInt(Integer.java:614) [java.base:] at
java.base/java.lang.Short.parseShort(Short.java:130) [java.base:] at
java.base/java.lang.Short.valueOf(Short.java:186) [java.base:] at
java.base/java.lang.Short.valueOf(Short.java:212) [java.base:] at
org.apache.activemq.artemis.utils.collections.TypedProperties.getShortProperty(TypedProperties.java:257)
[artemis-commons-2.18.0.jar:2.18.0] at
org.apache.activemq.artemis.core.message.impl.CoreMessage.getShortProperty(CoreMessage.java:1044)
[artemis-core-client-2.18.0.jar:2.18.0] at
org.apache.activemq.artemis.core.message.impl.CoreMessage.getShortProperty(CoreMessage.java:1049)
[artemis-core-client-2.18.0.jar:2.18.0] at
org.apache.activemq.artemis.protocol.amqp.converter.coreWrapper.CoreMessageWrapper.getOrignalEncoding(CoreMessageWrapper.java:78)
[artemis-amqp-protocol-2.18.0.jar:2.18.0] at
org.apache.activemq.artemis.protocol.amqp.converter.coreWrapper.CoreBytesMessageWrapper.createAMQPSection(CoreBytesMessageWrapper.java:77)
[artemis-amqp-protocol-2.18.0.jar:2.18.0] at
org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.fromCore(CoreAmqpConverter.java:108)
[artemis-amqp-protocol-2.18.0.jar:2.18.0] at
org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.checkAMQP(CoreAmqpConverter.java:83)
[artemis-amqp-protocol-2.18.0.jar:2.18.0] at
org.apache.activemq.artemis.protocol.amqp.proton.ProtonServerSenderContext.executeDelivery(ProtonServerSenderContext.java:537)
[artemis-amqp-protocol-2.18.0.jar:2.18.0] at
org.apache.activemq.artemis.core.server.impl.MessageReferenceImpl.run(MessageReferenceImpl.java:136)
[artemis-server-2.18.0.jar:2.18.0] at
io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164)
[netty-all-4.1.66.Final.jar:4.1.66.Final] at
io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:469)
[netty-all-4.1.66.Final.jar:4.1.66.Final] at
io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:500)
[netty-all-4.1.66.Final.jar:4.1.66.Final] at
io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)
[netty-all-4.1.66.Final.jar:4.1.66.Final] at
io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
[netty-all-4.1.66.Final.jar:4.1.66.Final] at
org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
[artemis-commons-2.18.0.jar:2.18.0]{code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)