Author: dkulp
Date: Fri Jan 30 19:06:03 2009
New Revision: 739379
URL: http://svn.apache.org/viewvc?rev=739379&view=rev
Log:
Merged revisions 739367 via svnmerge from
https://svn.apache.org/repos/asf/cxf/trunk
........
r739367 | dkulp | 2009-01-30 13:32:06 -0500 (Fri, 30 Jan 2009) | 2 lines
When using old style config, delay creating ConnectionFactory to allow
programatic changing
........
Modified:
cxf/branches/2.1.x-fixes/ (props changed)
cxf/branches/2.1.x-fixes/rt/transports/jms/src/main/java/org/apache/cxf/transport/jms/JMSConfiguration.java
cxf/branches/2.1.x-fixes/rt/transports/jms/src/main/java/org/apache/cxf/transport/jms/JMSOldConfigHolder.java
Propchange: cxf/branches/2.1.x-fixes/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Jan 30 19:06:03 2009
@@ -1 +1 @@
-/cxf/trunk:686333-686363,686764,686820,687096,687194,687363,687387,687463,687543,687722,687798,687814,687817,687891,687910,687914,688086,688102,688133,688596,688735,688870,689572,689596,689855,689924,690067,690289,691246,691271,691295,691338,691355,691488,691602,691646,691706,691728,692116,692157,692310,692466,692499,693653,693819,694179,694263,694417,694716,694744,694747,694795,694869,694981,694987,694993,695041,695096,695396,695484,695537,695552,695561,695619,695684,695835,695840,695868,695935,695977,696016,696094,696433,696720,697085,697868,698128,699289,700261,700507,700602,700981,701316,701783,701830,701862,702187,702205-702248,702267,702547,702561,702580,702602,702609,702616,702653,702656,702957,703191,703239,703309,703501,703513,703548,704584,704937,704997,705150,705235,705274,705340,705446,705548,705614,705692,705708,706482,706631,706675,706900,706909,707034,707089,707100,707902,708035,708044,708074,708410,708417,708550,708554,709353-709354,709425,710076,710150,71015
4,711193,711388,711410,711490,711635,711949,711975,712194,712198,712238,712272,712299,712312,712670,712893,713082,713095-713096,713099,713584,713597,713737,713804,713899,714167-714168,714245,714255,717937-717961,718281-718448,718565,718620,718640,718665,718970,719017,719210,719215-719218,719222-719273,719305,719327-719680,720053,720119-720218,720238,720293-720316,720497,721221,721241,721501,722117,722129,722412,722988,723024,723338,723378,723716-723791,724333-724372,724433-724438,724449,724481,724485,724668,724780,724782,724785,724793,724795,724940,725071,725316,725332,725335,725348,725364,725418,725425-725426,725455,725506,725554,725562,725651,725671,725688,725754,725773,725799,725839,726342,726524,726631,726634,726637,726639,726692,726724,726769,726992,727096,727445,727521,727568,727692,727754,727781,727792,728070,728087,728696,728897,729051,729430,729449,729460,729863,730082,730139,730889,730891,731598,731604,731615,731631,731635,732036,732050,732320,732363,732411,732450,
732710,732773,732827,732829,733512,733582,733901,734367,734462,734666,734762,734772,734812,734836,734965,735113,735252,735722-735723,735729,735734,735751,735782,735787,735987,736332,736343,736352,736358-736362,736408,736423,736448,736491,736621,736726,736736,736738-736739,736766,736825,736852,737032,737046,737061,737069,737124,737237,737246,737299,737356,737494,737498,737761,737817,737849,737855,737994,738166,738178,738201,738210,738242,738244,738265,738516,738583,738863,738937,738983
+/cxf/trunk:686333-686363,686764,686820,687096,687194,687363,687387,687463,687543,687722,687798,687814,687817,687891,687910,687914,688086,688102,688133,688596,688735,688870,689572,689596,689855,689924,690067,690289,691246,691271,691295,691338,691355,691488,691602,691646,691706,691728,692116,692157,692310,692466,692499,693653,693819,694179,694263,694417,694716,694744,694747,694795,694869,694981,694987,694993,695041,695096,695396,695484,695537,695552,695561,695619,695684,695835,695840,695868,695935,695977,696016,696094,696433,696720,697085,697868,698128,699289,700261,700507,700602,700981,701316,701783,701830,701862,702187,702205-702248,702267,702547,702561,702580,702602,702609,702616,702653,702656,702957,703191,703239,703309,703501,703513,703548,704584,704937,704997,705150,705235,705274,705340,705446,705548,705614,705692,705708,706482,706631,706675,706900,706909,707034,707089,707100,707902,708035,708044,708074,708410,708417,708550,708554,709353-709354,709425,710076,710150,71015
4,711193,711388,711410,711490,711635,711949,711975,712194,712198,712238,712272,712299,712312,712670,712893,713082,713095-713096,713099,713584,713597,713737,713804,713899,714167-714168,714245,714255,717937-717961,718281-718448,718565,718620,718640,718665,718970,719017,719210,719215-719218,719222-719273,719305,719327-719680,720053,720119-720218,720238,720293-720316,720497,721221,721241,721501,722117,722129,722412,722988,723024,723338,723378,723716-723791,724333-724372,724433-724438,724449,724481,724485,724668,724780,724782,724785,724793,724795,724940,725071,725316,725332,725335,725348,725364,725418,725425-725426,725455,725506,725554,725562,725651,725671,725688,725754,725773,725799,725839,726342,726524,726631,726634,726637,726639,726692,726724,726769,726992,727096,727445,727521,727568,727692,727754,727781,727792,728070,728087,728696,728897,729051,729430,729449,729460,729863,730082,730139,730889,730891,731598,731604,731615,731631,731635,732036,732050,732320,732363,732411,732450,
732710,732773,732827,732829,733512,733582,733901,734367,734462,734666,734762,734772,734812,734836,734965,735113,735252,735722-735723,735729,735734,735751,735782,735787,735987,736332,736343,736352,736358-736362,736408,736423,736448,736491,736621,736726,736736,736738-736739,736766,736825,736852,737032,737046,737061,737069,737124,737237,737246,737299,737356,737494,737498,737761,737817,737849,737855,737994,738166,738178,738201,738210,738242,738244,738265,738516,738583,738863,738937,738983,739367
Propchange: cxf/branches/2.1.x-fixes/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.
Modified:
cxf/branches/2.1.x-fixes/rt/transports/jms/src/main/java/org/apache/cxf/transport/jms/JMSConfiguration.java
URL:
http://svn.apache.org/viewvc/cxf/branches/2.1.x-fixes/rt/transports/jms/src/main/java/org/apache/cxf/transport/jms/JMSConfiguration.java?rev=739379&r1=739378&r2=739379&view=diff
==============================================================================
---
cxf/branches/2.1.x-fixes/rt/transports/jms/src/main/java/org/apache/cxf/transport/jms/JMSConfiguration.java
(original)
+++
cxf/branches/2.1.x-fixes/rt/transports/jms/src/main/java/org/apache/cxf/transport/jms/JMSConfiguration.java
Fri Jan 30 19:06:03 2009
@@ -20,12 +20,17 @@
import javax.jms.ConnectionFactory;
import javax.jms.Message;
+import javax.naming.NamingException;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.beans.factory.annotation.Required;
import org.springframework.core.task.TaskExecutor;
-//import org.springframework.jms.core.JmsTemplate;
+import org.springframework.jms.connection.SingleConnectionFactory;
+import org.springframework.jms.connection.SingleConnectionFactory102;
+import
org.springframework.jms.connection.UserCredentialsConnectionFactoryAdapter;
+import org.springframework.jms.core.JmsTemplate;
import org.springframework.jms.support.destination.DestinationResolver;
+import org.springframework.jndi.JndiTemplate;
import org.springframework.transaction.PlatformTransactionManager;
public class JMSConfiguration implements InitializingBean {
@@ -43,7 +48,6 @@
private PlatformTransactionManager transactionManager;
private TaskExecutor taskExecutor;
private boolean useJms11 = DEFAULT_USEJMS11;
- private boolean useJndi;
private boolean messageIdEnabled = true;
private boolean messageTimestampEnabled = true;
private boolean pubSubNoLocal;
@@ -54,6 +58,15 @@
private int priority = Message.DEFAULT_PRIORITY;
private long timeToLive = Message.DEFAULT_TIME_TO_LIVE;
private boolean sessionTransacted;
+
+ //Stuff for JNDI based and old configs
+ private boolean useJndi;
+ private JndiTemplate jndiTemplate;
+ private String jndiConnectionFactoryName;
+ private String connectionUserName;
+ private String connectionPassword;
+ private Boolean reconnectOnException;
+
private int concurrentConsumers = 1;
private int maxConcurrentConsumers = 1;
@@ -215,9 +228,46 @@
}
}
+
public ConnectionFactory getConnectionFactory() {
+ if (connectionFactory == null && jndiTemplate != null &&
jndiConnectionFactoryName != null) {
+ connectionFactory = getConnectionFactoryFromJndi();
+ }
return connectionFactory;
}
+ private ConnectionFactory getConnectionFactoryFromJndi() {
+
+ String connectionFactoryName = getJndiConnectionFactoryName();
+ String userName = getConnectionUserName();
+ String password = getConnectionPassword();
+
+
+ if (connectionFactoryName == null) {
+ return null;
+ }
+ try {
+ ConnectionFactory cf =
(ConnectionFactory)jndiTemplate.lookup(connectionFactoryName);
+ UserCredentialsConnectionFactoryAdapter uccf = new
UserCredentialsConnectionFactoryAdapter();
+ uccf.setUsername(userName);
+ uccf.setPassword(password);
+ uccf.setTargetConnectionFactory(cf);
+
+ if (this.useJms11) {
+ SingleConnectionFactory scf = new
SingleConnectionFactory(uccf);
+ if (isSetReconnectOnException() && isReconnectOnException()) {
+ scf.setReconnectOnException(true);
+ }
+ return scf;
+ }
+ SingleConnectionFactory102 scf = new
SingleConnectionFactory102(uccf, pubSubDomain);
+ if (isSetReconnectOnException() && isReconnectOnException()) {
+ scf.setReconnectOnException(true);
+ }
+ return scf;
+ } catch (NamingException e) {
+ throw new RuntimeException(e);
+ }
+ }
@Required
public void setConnectionFactory(ConnectionFactory connectionFactory) {
@@ -328,4 +378,47 @@
this.maxConcurrentTasks = maxConcurrentTasks;
}
+ public void setJndiTemplate(JndiTemplate jndiTemplate) {
+ this.jndiTemplate = jndiTemplate;
+ }
+
+ public JndiTemplate getJndiTemplate() {
+ return jndiTemplate;
+ }
+
+ public String getJndiConnectionFactoryName() {
+ return jndiConnectionFactoryName;
+ }
+
+ public void setJndiConnectionFactoryName(String jndiConnectionFactoryName)
{
+ this.jndiConnectionFactoryName = jndiConnectionFactoryName;
+ }
+
+ public String getConnectionUserName() {
+ return connectionUserName;
+ }
+
+ public void setConnectionUserName(String connectionUserName) {
+ this.connectionUserName = connectionUserName;
+ }
+
+ public String getConnectionPassword() {
+ return connectionPassword;
+ }
+
+ public void setConnectionPassword(String connectionPassword) {
+ this.connectionPassword = connectionPassword;
+ }
+
+ public boolean isSetReconnectOnException() {
+ return reconnectOnException != null;
+ }
+ public boolean isReconnectOnException() {
+ return reconnectOnException;
+ }
+
+ public void setReconnectOnException(boolean reconnectOnException) {
+ this.reconnectOnException = reconnectOnException;
+ }
+
}
Modified:
cxf/branches/2.1.x-fixes/rt/transports/jms/src/main/java/org/apache/cxf/transport/jms/JMSOldConfigHolder.java
URL:
http://svn.apache.org/viewvc/cxf/branches/2.1.x-fixes/rt/transports/jms/src/main/java/org/apache/cxf/transport/jms/JMSOldConfigHolder.java?rev=739379&r1=739378&r2=739379&view=diff
==============================================================================
---
cxf/branches/2.1.x-fixes/rt/transports/jms/src/main/java/org/apache/cxf/transport/jms/JMSOldConfigHolder.java
(original)
+++
cxf/branches/2.1.x-fixes/rt/transports/jms/src/main/java/org/apache/cxf/transport/jms/JMSOldConfigHolder.java
Fri Jan 30 19:06:03 2009
@@ -23,16 +23,10 @@
import java.util.logging.Level;
import java.util.logging.Logger;
-import javax.jms.ConnectionFactory;
-import javax.naming.NamingException;
-
import org.apache.cxf.Bus;
import org.apache.cxf.common.logging.LogUtils;
import org.apache.cxf.configuration.Configurer;
import org.apache.cxf.service.model.EndpointInfo;
-import org.springframework.jms.connection.SingleConnectionFactory;
-import org.springframework.jms.connection.SingleConnectionFactory102;
-import
org.springframework.jms.connection.UserCredentialsConnectionFactoryAdapter;
import org.springframework.jms.support.destination.JndiDestinationResolver;
import org.springframework.jndi.JndiTemplate;
@@ -47,43 +41,6 @@
private ServerConfig serverConfig;
private ServerBehaviorPolicyType serverBehavior;
- private ConnectionFactory getConnectionFactoryFromJndi(JndiTemplate jt,
- boolean
pubSubDomain) {
-
- String connectionFactoryName = address.getJndiConnectionFactoryName();
- String userName = address.getConnectionUserName();
- String password = address.getConnectionPassword();
- boolean use11 = address.isSetUseJms11()
- ? address.isUseJms11() : JMSConfiguration.DEFAULT_USEJMS11;
-
-
- if (connectionFactoryName == null) {
- return null;
- }
- try {
- ConnectionFactory connectionFactory =
(ConnectionFactory)jt.lookup(connectionFactoryName);
- UserCredentialsConnectionFactoryAdapter uccf = new
UserCredentialsConnectionFactoryAdapter();
- uccf.setUsername(userName);
- uccf.setPassword(password);
- uccf.setTargetConnectionFactory(connectionFactory);
-
- if (use11) {
- SingleConnectionFactory cf = new SingleConnectionFactory(uccf);
- if (address.isSetReconnectOnException() &&
address.isReconnectOnException()) {
- cf.setReconnectOnException(true);
- }
- return cf;
- }
- SingleConnectionFactory102 cf = new
SingleConnectionFactory102(uccf, pubSubDomain);
- if (address.isSetReconnectOnException() &&
address.isReconnectOnException()) {
- cf.setReconnectOnException(true);
- }
- return cf;
- } catch (NamingException e) {
- throw new RuntimeException(e);
- }
- }
-
public JMSConfiguration createJMSConfigurationFromEndpointInfo(Bus bus,
EndpointInfo endpointInfo,
boolean
isConduit) {
@@ -120,8 +77,13 @@
pubSubDomain = DestinationStyleType.TOPIC ==
address.getDestinationStyle();
}
if (jmsConfig.getConnectionFactory() == null) {
- ConnectionFactory cf = getConnectionFactoryFromJndi(jt,
pubSubDomain);
- jmsConfig.setConnectionFactory(cf);
+
jmsConfig.setJndiConnectionFactoryName(address.getJndiConnectionFactoryName());
+ jmsConfig.setJndiTemplate(jt);
+
jmsConfig.setConnectionUserName(address.getConnectionUserName());
+
jmsConfig.setConnectionPassword(address.getConnectionPassword());
+ if (address.isSetReconnectOnException()) {
+
jmsConfig.setReconnectOnException(address.isReconnectOnException());
+ }
}
jmsConfig.setDurableSubscriptionName(serverBehavior.getDurableSubscriberName());
jmsConfig.setExplicitQosEnabled(true);