You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by pa...@apache.org on 2017/12/06 22:21:32 UTC
[camel] branch camel-2.20.x updated: CAMEL-12069: ActiveMQ/JMS
component: transferExchange option does not transfer exchange properties
anymore (closes #2139)
This is an automated email from the ASF dual-hosted git repository.
pascalschumacher pushed a commit to branch camel-2.20.x
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/camel-2.20.x by this push:
new e02e456 CAMEL-12069: ActiveMQ/JMS component: transferExchange option does not transfer exchange properties anymore (closes #2139)
e02e456 is described below
commit e02e45626cb21c8dd9d029745336a299e613edb1
Author: Pascal Schumacher <pa...@gmx.net>
AuthorDate: Wed Dec 6 20:58:02 2017 +0100
CAMEL-12069: ActiveMQ/JMS component: transferExchange option does not transfer exchange properties anymore (closes #2139)
TransferExchange now includes exchange properties again. This restores the previous behavior accidentally broken by 5dd59162e4ac9335e497934b8d662f598cb779d1.
---
.../src/main/java/org/apache/camel/component/jms/JmsBinding.java | 2 +-
.../org/apache/camel/component/jms/JmsInOutTransferExchangeTest.java | 4 ++++
.../java/org/apache/camel/component/jms/JmsTransferExchangeTest.java | 1 +
3 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsBinding.java b/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsBinding.java
index 6b2a9a2..f43d321 100644
--- a/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsBinding.java
+++ b/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsBinding.java
@@ -483,7 +483,7 @@ public class JmsBinding {
// special for transferExchange
if (endpoint != null && endpoint.isTransferExchange()) {
LOG.trace("Option transferExchange=true so we use JmsMessageType: Object");
- Serializable holder = DefaultExchangeHolder.marshal(exchange, false, endpoint.isAllowSerializedHeaders());
+ Serializable holder = DefaultExchangeHolder.marshal(exchange, true, endpoint.isAllowSerializedHeaders());
Message answer = session.createObjectMessage(holder);
// ensure default delivery mode is used by default
answer.setJMSDeliveryMode(Message.DEFAULT_DELIVERY_MODE);
diff --git a/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsInOutTransferExchangeTest.java b/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsInOutTransferExchangeTest.java
index f7efd68..cc4721a 100644
--- a/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsInOutTransferExchangeTest.java
+++ b/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsInOutTransferExchangeTest.java
@@ -67,6 +67,8 @@ public class JmsInOutTransferExchangeTest extends CamelTestSupport {
map.put("double", new Double(1.23));
exchange.getIn().setHeaders(map);
+
+ exchange.setProperty("PropertyName", "PropertyValue");
}
});
@@ -88,6 +90,7 @@ public class JmsInOutTransferExchangeTest extends CamelTestSupport {
assertEquals((Long) 123L, exchange.getIn().getHeader("long", Long.class));
assertEquals((Double) 1.23, exchange.getIn().getHeader("double", Double.class));
assertEquals("hello", exchange.getIn().getHeader("string", String.class));
+ assertEquals("PropertyValue", exchange.getProperty("PropertyName"));
Exchange resultExchange = result.getExchanges().get(0);
assertTrue(resultExchange.getIn() instanceof JmsMessage);
@@ -103,6 +106,7 @@ public class JmsInOutTransferExchangeTest extends CamelTestSupport {
assertEquals((Long) 123L, exchange.getIn().getHeader("long", Long.class));
assertEquals((Double) 1.23, exchange.getIn().getHeader("double", Double.class));
assertEquals("hello", exchange.getIn().getHeader("string", String.class));
+ assertEquals("PropertyValue", exchange.getProperty("PropertyName"));
}
@Override
diff --git a/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsTransferExchangeTest.java b/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsTransferExchangeTest.java
index 71d25e8..1aa1572 100644
--- a/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsTransferExchangeTest.java
+++ b/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsTransferExchangeTest.java
@@ -62,6 +62,7 @@ public class JmsTransferExchangeTest extends CamelTestSupport {
MockEndpoint mock = getMockEndpoint("mock:result");
mock.expectedBodiesReceived("Hello World");
mock.expectedHeaderReceived("foo", "cheese");
+ mock.expectedPropertyReceived("bar", 123);
template.send("direct:start", new Processor() {
public void process(Exchange exchange) throws Exception {
--
To stop receiving notification emails like this one, please contact
['"commits@camel.apache.org" <co...@camel.apache.org>'].