This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch camel-3.11.x
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/camel-3.11.x by this push:
new d5b63bd CAMEL-16763: Fixes JMS Correlation ID bug in camel-sjms
(#5766)
d5b63bd is described below
commit d5b63bd29110da0d7d22d2b0007853954bf3bba8
Author: Shannon Gallagher <[email protected]>
AuthorDate: Wed Jun 30 07:58:36 2021 -0700
CAMEL-16763: Fixes JMS Correlation ID bug in camel-sjms (#5766)
* Use getJMSCorrelationID instead of ...AsBytes
When determining JMS correlation ID, use getJMSCorrelationId instead of
getJMSCorrelationIDAsBytes
* Update ReplyManagerSupport
Replace getJMSCorrelationIDAsBytes with getJMSCorrelationID in
ReplyManagerSupport.onMessage
---
.../org/apache/camel/component/sjms/SjmsProducer.java | 2 +-
.../camel/component/sjms/jms/JmsMessageHelper.java | 16 ++++++++++++++++
.../camel/component/sjms/reply/ReplyManagerSupport.java | 4 ++--
3 files changed, 19 insertions(+), 3 deletions(-)
diff --git
a/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/SjmsProducer.java
b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/SjmsProducer.java
index 27c8af6..a7676e4 100644
---
a/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/SjmsProducer.java
+++
b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/SjmsProducer.java
@@ -490,7 +490,7 @@ public class SjmsProducer extends DefaultAsyncProducer {
* @throws JMSException can be thrown
*/
protected String determineCorrelationId(Message message) throws
JMSException {
- String cid = getJMSCorrelationIDAsBytes(message);
+ String cid = getJMSCorrelationID(message);
if (ObjectHelper.isEmpty(cid)) {
cid = getJMSMessageID(message);
}
diff --git
a/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/jms/JmsMessageHelper.java
b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/jms/JmsMessageHelper.java
index 0871be7..fc15e96 100644
---
a/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/jms/JmsMessageHelper.java
+++
b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/jms/JmsMessageHelper.java
@@ -385,6 +385,22 @@ public final class JmsMessageHelper {
}
/**
+ * Gets the JMSCorrelationID from the message.
+ *
+ * @param message the message
+ * @return the JMSCorrelationID, or <tt>null</tt> if not able to
get
+ */
+ public static String getJMSCorrelationID(Message message) {
+ try {
+ return message.getJMSCorrelationID();
+ } catch (JMSException e) {
+ // ignore
+ }
+
+ return null;
+ }
+
+ /**
* Gets the JMSCorrelationIDAsBytes from the message.
*
* @param message the message
diff --git
a/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/reply/ReplyManagerSupport.java
b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/reply/ReplyManagerSupport.java
index b1342e3..da1c067 100644
---
a/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/reply/ReplyManagerSupport.java
+++
b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/reply/ReplyManagerSupport.java
@@ -41,7 +41,7 @@ import org.apache.camel.util.ObjectHelper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import static
org.apache.camel.component.sjms.jms.JmsMessageHelper.getJMSCorrelationIDAsBytes;
+import static
org.apache.camel.component.sjms.jms.JmsMessageHelper.getJMSCorrelationID;
/**
* Base class for {@link ReplyManager} implementations.
@@ -127,7 +127,7 @@ public abstract class ReplyManagerSupport extends
ServiceSupport implements Repl
@Override
public void onMessage(Message message, Session session) throws
JMSException {
- String correlationID = getJMSCorrelationIDAsBytes(message);
+ String correlationID = getJMSCorrelationID(message);
if (correlationID == null) {
log.warn("Ignoring message with no correlationID: {}", message);