Author: veithen
Date: Sun Sep 14 14:45:15 2008
New Revision: 695296

URL: http://svn.apache.org/viewvc?rev=695296&view=rev
Log:
JMS transport: Corrected a bug where JMSSender doesn't look up the destination 
from JNDI (and thus tries to create it) if it finds a connection factory 
definition in the transport configuration (axis2.xml) matching the connection 
factory JNDI name in the EPR.

Modified:
    
synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/jms/JMSOutTransportInfo.java
    
synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/jms/JMSSender.java

Modified: 
synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/jms/JMSOutTransportInfo.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/jms/JMSOutTransportInfo.java?rev=695296&r1=695295&r2=695296&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/jms/JMSOutTransportInfo.java
 (original)
+++ 
synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/jms/JMSOutTransportInfo.java
 Sun Sep 14 14:45:15 2008
@@ -37,6 +37,8 @@
 
     private static final Log log = 
LogFactory.getLog(JMSOutTransportInfo.class);
 
+    /** The naming context */
+    private Context context;
     /**
      * this is a reference to the underlying JMS connection factory when 
sending messages
      * through connection factories not defined to the transport sender
@@ -100,6 +102,13 @@
             if(replyDestinationName != null) {
                 setReplyDestinationName(replyDestinationName);
             }
+            try {
+                context = new InitialContext(properties);
+            } catch (NamingException e) {
+                handleException("Could not get an initial context using " + 
properties, e);
+            }
+            destination = getDestination(context, targetEPR);
+            replyDestination = getReplyDestination(context, targetEPR);
         }
     }
 
@@ -109,15 +118,7 @@
      */
     public void loadConnectionFactoryFromProperies() {
         if (properties != null) {
-            Context context = null;
-            try {
-                context = new InitialContext(properties);
-            } catch (NamingException e) {
-                handleException("Could not get an initial context using " + 
properties, e);
-            }
             connectionFactory = getConnectionFactory(context, properties);
-            destination = getDestination(context, targetEPR);
-            replyDestination = getReplyDestination(context, targetEPR);
         }
     }
 

Modified: 
synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/jms/JMSSender.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/jms/JMSSender.java?rev=695296&r1=695295&r2=695296&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/jms/JMSSender.java
 (original)
+++ 
synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/jms/JMSSender.java
 Sun Sep 14 14:45:15 2008
@@ -103,7 +103,6 @@
         Connection connection = null;   // holds a one time connection if used
         JMSOutTransportInfo jmsOut = null;
         Session session = null;
-        Destination destination = null;
         Destination replyDestination = null;
 
         try {
@@ -165,7 +164,6 @@
                         handleException("Error creating a connection/session 
for : " + targetAddress, e);
                     }
                 }
-                destination = jmsOut.getDestination();
                 replyDestination = jmsOut.getReplyDestination();
 
             } else if (outTransportInfo != null && outTransportInfo instanceof 
JMSOutTransportInfo) {
@@ -175,8 +173,9 @@
 
                 session = jmsConnectionFactory.getSessionForDestination(
                     jmsOut.getDestination().toString());
-                destination = jmsOut.getDestination();
             }
+            
+            Destination destination = jmsOut.getDestination();
 
             String replyDestName = (String) 
msgCtx.getProperty(JMSConstants.JMS_REPLY_TO);
             if (replyDestName != null) {


Reply via email to