diff --git a/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsMessage.java b/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsMessage.java index 38bf1c9cf1a39..e0d67a1f3596b 100644 --- a/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsMessage.java +++ b/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsMessage.java @@ -17,6 +17,7 @@ package org.apache.camel.component.jms; import java.io.File; +import java.util.LinkedHashMap; import java.util.Map; import jakarta.jms.Destination; @@ -120,6 +121,12 @@ public void copyFrom(org.apache.camel.Message that) { if (that.hasHeaders()) { getHeaders().putAll(that.getHeaders()); } + + // copy attachments + Map attachments = (Map) that.getPayloadForTrait(MessageTrait.ATTACHMENTS); + if (attachments != null) { + setPayloadForTrait(MessageTrait.ATTACHMENTS, new LinkedHashMap<>(attachments)); + } } public JmsBinding getBinding() {