cxf-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ff...@apache.org
Subject git commit: [CXF-5649]Enable configuration for JMS message type to be byte when use MTOM
Date Thu, 27 Mar 2014 06:36:13 GMT
Repository: cxf
Updated Branches:
  refs/heads/2.7.x-fixes df909075a -> 58ea0b97d


[CXF-5649]Enable configuration for JMS message type to be byte when use MTOM


Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/58ea0b97
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/58ea0b97
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/58ea0b97

Branch: refs/heads/2.7.x-fixes
Commit: 58ea0b97dbc02ae959f48089384fbf906c813b9a
Parents: df90907
Author: Freeman Fang <freeman.fang@gmail.com>
Authored: Thu Mar 27 14:35:51 2014 +0800
Committer: Freeman Fang <freeman.fang@gmail.com>
Committed: Thu Mar 27 14:35:51 2014 +0800

----------------------------------------------------------------------
 .../org/apache/cxf/transport/jms/JMSDestination.java  | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cxf/blob/58ea0b97/rt/transports/jms/src/main/java/org/apache/cxf/transport/jms/JMSDestination.java
----------------------------------------------------------------------
diff --git a/rt/transports/jms/src/main/java/org/apache/cxf/transport/jms/JMSDestination.java
b/rt/transports/jms/src/main/java/org/apache/cxf/transport/jms/JMSDestination.java
index 4bc2c52..b6ce449 100644
--- a/rt/transports/jms/src/main/java/org/apache/cxf/transport/jms/JMSDestination.java
+++ b/rt/transports/jms/src/main/java/org/apache/cxf/transport/jms/JMSDestination.java
@@ -48,6 +48,7 @@ import org.apache.cxf.common.classloader.ClassLoaderUtils;
 import org.apache.cxf.common.classloader.ClassLoaderUtils.ClassLoaderHolder;
 import org.apache.cxf.common.logging.LogUtils;
 import org.apache.cxf.common.util.StringUtils;
+import org.apache.cxf.configuration.ConfigurationException;
 import org.apache.cxf.continuations.ContinuationProvider;
 import org.apache.cxf.continuations.SuspendedInvocationException;
 import org.apache.cxf.interceptor.OneWayProcessorInterceptor;
@@ -294,8 +295,10 @@ public class JMSDestination extends AbstractMultiplexDestination
             final javax.jms.Message request = (javax.jms.Message)inMessage
                 .get(JMSConstants.JMS_REQUEST_MESSAGE);
             final String msgType;
-            if (isMtomEnabled(outMessage)) {
-                msgType = JMSConstants.BINARY_MESSAGE_TYPE;
+            if (isMtomEnabled(outMessage) 
+                && !jmsConfig.getMessageType().equals(JMSConstants.TEXT_MESSAGE_TYPE))
{
+                //get chance to set messageType from JMSConfiguration with MTOM enabled
+                msgType = jmsConfig.getMessageType();
             } else if (request instanceof TextMessage) {
                 msgType = JMSConstants.TEXT_MESSAGE_TYPE;
             } else if (request instanceof BytesMessage) {
@@ -303,6 +306,13 @@ public class JMSDestination extends AbstractMultiplexDestination
             } else {
                 msgType = JMSConstants.BINARY_MESSAGE_TYPE;
             }
+            
+            
+            if (JMSConstants.TEXT_MESSAGE_TYPE.equals(msgType) && isMtomEnabled(outMessage))
{
+                org.apache.cxf.common.i18n.Message msg = 
+                    new org.apache.cxf.common.i18n.Message("INVALID_MESSAGE_TYPE", LOG);
+                throw new ConfigurationException(msg);
+            }
 
             Destination replyTo = getReplyToDestination(jmsTemplate, inMessage);
 


Mime
View raw message