You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by rm...@apache.org on 2015/08/03 16:57:49 UTC
tomee git commit: TOMEE-1620 dbcp2 (so pool 2)
Repository: tomee
Updated Branches:
refs/heads/master e362fde9b -> 9beea6937
TOMEE-1620 dbcp2 (so pool 2)
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/9beea693
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/9beea693
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/9beea693
Branch: refs/heads/master
Commit: 9beea693784efc7e230017dc39259df682cf9a34
Parents: e362fde
Author: Romain Manni-Bucau <rm...@apache.org>
Authored: Mon Aug 3 16:57:28 2015 +0200
Committer: Romain Manni-Bucau <rm...@apache.org>
Committed: Mon Aug 3 16:57:28 2015 +0200
----------------------------------------------------------------------
.../openejb/BindingInJavaGlobalTest.java | 2 +-
arquillian/arquillian-tomee-common/pom.xml | 8 ++---
.../arquillian-tomee-webapp-remote/pom.xml | 8 ++---
container/openejb-core/pom.xml | 16 ++++-----
.../assembler/classic/PersistenceBuilder.java | 7 ++--
.../openejb/monitoring/DynamicMBeanWrapper.java | 23 ++++++-------
.../resource/jdbc/dbcp/BasicDataSource.java | 35 ++++++++++----------
.../jdbc/dbcp/BasicManagedDataSource.java | 18 +++++-----
.../jdbc/dbcp/DataSourceSerialization.java | 2 +-
.../resource/jdbc/dbcp/DbcpDataSource.java | 8 ++---
.../jdbc/dbcp/DbcpDataSourceCreator.java | 22 ++++++------
.../jdbc/dbcp/DbcpManagedDataSource.java | 22 ++++++------
.../resource/jdbc/dbcp/JMXBasicDataSource.java | 26 +++++++--------
.../jdbc/pool/DefaultDataSourceCreator.java | 4 +--
.../DataSourceDefinitionGlobalJPATest.java | 4 +--
.../classic/DataSourceDefinitionJndiTest.java | 4 +--
.../DataSourceDefinitionPlaceHolderTest.java | 2 +-
.../classic/OpenEJBXmlByModuleTest.java | 2 +-
.../assembler/classic/ResourcesJsonTest.java | 2 +-
.../openejb/config/JMXDataSourceTest.java | 1 -
.../apache/openejb/config/JSonConfigTest.java | 4 +--
.../apache/openejb/core/cmp/jpa/JpaTest.java | 4 +--
.../openejb/core/cmp/jpa/UnenhancedTest.java | 4 +--
.../resource/jdbc/IgnoreDefaultTest.java | 6 ++--
.../resource/jdbc/JtaFailOverRouterTest.java | 32 ++++++++----------
.../openejb/resource/jdbc/XADataSourceTest.java | 19 ++++++-----
.../src/test/resources/openejb.json | 2 +-
pom.xml | 17 ++++------
server/openejb-hsql/pom.xml | 8 ++---
server/openejb-server/pom.xml | 4 +--
30 files changed, 153 insertions(+), 163 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/arquillian/arquillian-openejb-embedded/src/test/java/org/apache/openejb/arquillian/openejb/BindingInJavaGlobalTest.java
----------------------------------------------------------------------
diff --git a/arquillian/arquillian-openejb-embedded/src/test/java/org/apache/openejb/arquillian/openejb/BindingInJavaGlobalTest.java b/arquillian/arquillian-openejb-embedded/src/test/java/org/apache/openejb/arquillian/openejb/BindingInJavaGlobalTest.java
index 0d4bd42..86e2fef 100644
--- a/arquillian/arquillian-openejb-embedded/src/test/java/org/apache/openejb/arquillian/openejb/BindingInJavaGlobalTest.java
+++ b/arquillian/arquillian-openejb-embedded/src/test/java/org/apache/openejb/arquillian/openejb/BindingInJavaGlobalTest.java
@@ -16,7 +16,7 @@
*/
package org.apache.openejb.arquillian.openejb;
-import org.apache.commons.dbcp.BasicDataSource;
+import org.apache.commons.dbcp2.BasicDataSource;
import org.apache.openejb.assembler.classic.ReloadableEntityManagerFactory;
import org.jboss.arquillian.container.test.api.Deployment;
import org.jboss.arquillian.junit.Arquillian;
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/arquillian/arquillian-tomee-common/pom.xml
----------------------------------------------------------------------
diff --git a/arquillian/arquillian-tomee-common/pom.xml b/arquillian/arquillian-tomee-common/pom.xml
index 4142687..84f04a1 100644
--- a/arquillian/arquillian-tomee-common/pom.xml
+++ b/arquillian/arquillian-tomee-common/pom.xml
@@ -191,12 +191,12 @@
<groupId>org.apache.openwebbeans</groupId>
</exclusion>
<exclusion>
- <artifactId>commons-dbcp</artifactId>
- <groupId>commons-dbcp</groupId>
+ <artifactId>org.apache.commons</artifactId>
+ <groupId>commons-dbcp2</groupId>
</exclusion>
<exclusion>
- <artifactId>commons-pool</artifactId>
- <groupId>commons-pool</groupId>
+ <artifactId>org.apache.commons</artifactId>
+ <groupId>commons-pool2</groupId>
</exclusion>
<exclusion>
<artifactId>swizzle-stream</artifactId>
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/arquillian/arquillian-tomee-webapp-remote/pom.xml
----------------------------------------------------------------------
diff --git a/arquillian/arquillian-tomee-webapp-remote/pom.xml b/arquillian/arquillian-tomee-webapp-remote/pom.xml
index 09083c8..736c21f 100644
--- a/arquillian/arquillian-tomee-webapp-remote/pom.xml
+++ b/arquillian/arquillian-tomee-webapp-remote/pom.xml
@@ -210,12 +210,12 @@
<groupId>org.apache.openwebbeans</groupId>
</exclusion>
<exclusion>
- <artifactId>commons-dbcp</artifactId>
- <groupId>commons-dbcp</groupId>
+ <artifactId>org.apache.commons</artifactId>
+ <groupId>commons-dbcp2</groupId>
</exclusion>
<exclusion>
- <artifactId>commons-pool</artifactId>
- <groupId>commons-pool</groupId>
+ <artifactId>org.apache.commons</artifactId>
+ <groupId>commons-pool2</groupId>
</exclusion>
<exclusion>
<artifactId>swizzle-stream</artifactId>
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/container/openejb-core/pom.xml
----------------------------------------------------------------------
diff --git a/container/openejb-core/pom.xml b/container/openejb-core/pom.xml
index f61b099..d29a0bc 100644
--- a/container/openejb-core/pom.xml
+++ b/container/openejb-core/pom.xml
@@ -123,8 +123,8 @@
org.apache.bval.jsr.resolver;resolution:=optional,
org.apache.commons.beanutils,
org.apache.commons.cli;version="[1.2,2)",
- org.apache.commons.dbcp;resolution:=optional;version="[1.4,2)",
- org.apache.commons.dbcp.managed;resolution:=optional;version="[1.4,2)",
+ org.apache.commons.dbcp2;resolution:=optional;version="[2,3)",
+ org.apache.commons.dbcp2.managed;resolution:=optional;version="[2,3)",
org.apache.commons.lang;version="[2.6,2.9)",
org.apache.commons.lang3;version="[3.1,4)",
org.apache.geronimo.connector;version="[3.0,4)",
@@ -580,18 +580,18 @@
<artifactId>hsqldb</artifactId>
</dependency>
<dependency>
- <groupId>commons-dbcp</groupId>
- <artifactId>commons-dbcp</artifactId>
+ <groupId>org.apache.commons</groupId>
+ <artifactId>commons-dbcp2</artifactId>
<exclusions>
<exclusion>
- <groupId>commons-pool</groupId>
- <artifactId>commons-pool</artifactId>
+ <groupId>org.apache.commons</groupId>
+ <artifactId>commons-pool2</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
- <groupId>commons-pool</groupId>
- <artifactId>commons-pool</artifactId>
+ <groupId>org.apache.commons</groupId>
+ <artifactId>commons-pool2</artifactId>
</dependency>
<dependency>
<groupId>org.codehaus.swizzle</groupId>
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/PersistenceBuilder.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/PersistenceBuilder.java b/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/PersistenceBuilder.java
index f0bfb15..992404e 100644
--- a/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/PersistenceBuilder.java
+++ b/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/PersistenceBuilder.java
@@ -25,15 +25,16 @@ import org.apache.openejb.spi.ContainerSystem;
import org.apache.openejb.util.LogCategory;
import org.apache.openejb.util.Logger;
+import java.util.Map;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.persistence.SharedCacheMode;
import javax.persistence.ValidationMode;
import javax.persistence.spi.PersistenceUnitTransactionType;
+import javax.sql.CommonDataSource;
import javax.sql.DataSource;
import javax.validation.ValidatorFactory;
-import java.util.Map;
public class PersistenceBuilder {
@@ -84,7 +85,7 @@ public class PersistenceBuilder {
jtaDataSourceId = "openejb/Resource/" + jtaDataSourceId;
}
- final DataSource jtaDataSource = (DataSource) context.lookup(jtaDataSourceId);
+ final CommonDataSource jtaDataSource = (CommonDataSource) context.lookup(jtaDataSourceId);
unitInfo.setJtaDataSource(jtaDataSource);
} catch (final NamingException e) {
try {
@@ -131,7 +132,7 @@ public class PersistenceBuilder {
nonJtaDataSourceId = "java:openejb/Resource/" + nonJtaDataSourceId;
}
- final DataSource nonJtaDataSource = (DataSource) context.lookup(nonJtaDataSourceId);
+ final CommonDataSource nonJtaDataSource = (CommonDataSource) context.lookup(nonJtaDataSourceId);
unitInfo.setNonJtaDataSource(nonJtaDataSource);
} catch (final NamingException e) {
try {
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/container/openejb-core/src/main/java/org/apache/openejb/monitoring/DynamicMBeanWrapper.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/main/java/org/apache/openejb/monitoring/DynamicMBeanWrapper.java b/container/openejb-core/src/main/java/org/apache/openejb/monitoring/DynamicMBeanWrapper.java
index 2544a39..eaa2a3b 100644
--- a/container/openejb-core/src/main/java/org/apache/openejb/monitoring/DynamicMBeanWrapper.java
+++ b/container/openejb-core/src/main/java/org/apache/openejb/monitoring/DynamicMBeanWrapper.java
@@ -17,6 +17,17 @@
package org.apache.openejb.monitoring;
+import org.apache.openejb.api.internal.Internal;
+import org.apache.openejb.api.jmx.Description;
+import org.apache.openejb.api.jmx.MBean;
+import org.apache.openejb.api.jmx.ManagedAttribute;
+import org.apache.openejb.api.jmx.ManagedOperation;
+import org.apache.openejb.api.jmx.NotificationInfo;
+import org.apache.openejb.api.jmx.NotificationInfos;
+import org.apache.openejb.util.LogCategory;
+import org.apache.openejb.util.Logger;
+import org.apache.webbeans.config.WebBeansContext;
+
import java.lang.annotation.Annotation;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.InvocationTargetException;
@@ -28,7 +39,6 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.ResourceBundle;
-
import javax.management.Attribute;
import javax.management.AttributeList;
import javax.management.AttributeNotFoundException;
@@ -48,17 +58,6 @@ import javax.management.MBeanServer;
import javax.management.ObjectName;
import javax.management.ReflectionException;
-import org.apache.openejb.api.internal.Internal;
-import org.apache.openejb.api.jmx.Description;
-import org.apache.openejb.api.jmx.MBean;
-import org.apache.openejb.api.jmx.ManagedAttribute;
-import org.apache.openejb.api.jmx.ManagedOperation;
-import org.apache.openejb.api.jmx.NotificationInfo;
-import org.apache.openejb.api.jmx.NotificationInfos;
-import org.apache.openejb.util.LogCategory;
-import org.apache.openejb.util.Logger;
-import org.apache.webbeans.config.WebBeansContext;
-
public class DynamicMBeanWrapper implements DynamicMBean, MBeanRegistration {
public static final Logger logger = Logger.getInstance(LogCategory.OPENEJB_DEPLOY, DynamicMBeanWrapper.class);
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/BasicDataSource.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/BasicDataSource.java b/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/BasicDataSource.java
index b784961..ffb5bba 100644
--- a/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/BasicDataSource.java
+++ b/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/BasicDataSource.java
@@ -17,9 +17,9 @@
package org.apache.openejb.resource.jdbc.dbcp;
-import org.apache.commons.dbcp.ConnectionFactory;
-import org.apache.commons.dbcp.DataSourceConnectionFactory;
-import org.apache.commons.dbcp.managed.DataSourceXAConnectionFactory;
+import org.apache.commons.dbcp2.ConnectionFactory;
+import org.apache.commons.dbcp2.DataSourceConnectionFactory;
+import org.apache.commons.dbcp2.managed.DataSourceXAConnectionFactory;
import org.apache.openejb.OpenEJB;
import org.apache.openejb.cipher.PasswordCipher;
import org.apache.openejb.cipher.PasswordCipherFactory;
@@ -29,9 +29,6 @@ import org.apache.openejb.resource.jdbc.IsolationLevels;
import org.apache.openejb.resource.jdbc.plugin.DataSourcePlugin;
import org.apache.openejb.util.reflection.Reflections;
-import javax.sql.CommonDataSource;
-import javax.sql.DataSource;
-import javax.sql.XADataSource;
import java.io.File;
import java.io.ObjectStreamException;
import java.io.Serializable;
@@ -40,11 +37,13 @@ import java.sql.SQLFeatureNotSupportedException;
import java.util.Properties;
import java.util.concurrent.locks.ReentrantLock;
import java.util.logging.Logger;
+import javax.sql.CommonDataSource;
+import javax.sql.DataSource;
+import javax.sql.XADataSource;
@SuppressWarnings({"UnusedDeclaration"})
-public class BasicDataSource extends org.apache.commons.dbcp.BasicDataSource implements Serializable {
-
- private static final ReentrantLock lock = new ReentrantLock();
+public class BasicDataSource extends org.apache.commons.dbcp2.BasicDataSource implements Serializable {
+ private final ReentrantLock lock = new ReentrantLock();
private Logger logger;
@@ -81,9 +80,9 @@ public class BasicDataSource extends org.apache.commons.dbcp.BasicDataSource imp
protected ConnectionFactory createConnectionFactory() throws SQLException {
if (delegate != null) {
if (XADataSource.class.isInstance(delegate)) {
- return new DataSourceXAConnectionFactory(OpenEJB.getTransactionManager(), XADataSource.class.cast(delegate), username, password);
+ return new DataSourceXAConnectionFactory(OpenEJB.getTransactionManager(), XADataSource.class.cast(delegate), getUsername(), getPassword());
}
- return new DataSourceConnectionFactory(DataSource.class.cast(delegate), username, password);
+ return new DataSourceConnectionFactory(DataSource.class.cast(delegate), getUsername(), getPassword());
}
return super.createConnectionFactory();
}
@@ -208,24 +207,26 @@ public class BasicDataSource extends org.apache.commons.dbcp.BasicDataSource imp
final ReentrantLock l = lock;
l.lock();
try {
- super.setMaxWait((long) maxWait);
+ super.setMaxWaitMillis((long) maxWait);
} finally {
l.unlock();
}
}
+ @Override
protected DataSource createDataSource() throws SQLException {
final ReentrantLock l = lock;
l.lock();
try {
- if (super.dataSource != null) {
- return super.dataSource;
+ final Object dataSource = Reflections.get(this, "dataSource");
+ if (dataSource != null) {
+ return DataSource.class.cast(dataSource);
}
// check password codec if available
- if (null != passwordCipher) {
+ if (null != passwordCipher && !"PlainText".equals(passwordCipher)) {
final PasswordCipher cipher = PasswordCipherFactory.getPasswordCipher(passwordCipher);
- final String plainPwd = cipher.decrypt(password.toCharArray());
+ final String plainPwd = cipher.decrypt(getPassword().toCharArray());
// override previous password value
super.setPassword(plainPwd);
@@ -309,7 +310,7 @@ public class BasicDataSource extends org.apache.commons.dbcp.BasicDataSource imp
try {
if (null == this.logger) {
- this.logger = (Logger) Reflections.invokeByReflection(super.dataSource, "getParentLogger", new Class<?>[0], null);
+ this.logger = (Logger) Reflections.invokeByReflection(createDataSource(), "getParentLogger", new Class<?>[0], null);
}
return this.logger;
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/BasicManagedDataSource.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/BasicManagedDataSource.java b/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/BasicManagedDataSource.java
index 61f9baa..ec604b0 100644
--- a/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/BasicManagedDataSource.java
+++ b/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/BasicManagedDataSource.java
@@ -17,7 +17,7 @@
package org.apache.openejb.resource.jdbc.dbcp;
-import org.apache.commons.dbcp.ConnectionFactory;
+import org.apache.commons.dbcp2.ConnectionFactory;
import org.apache.openejb.OpenEJB;
import org.apache.openejb.cipher.PasswordCipher;
import org.apache.openejb.cipher.PasswordCipherFactory;
@@ -26,8 +26,8 @@ import org.apache.openejb.resource.jdbc.BasicDataSourceUtil;
import org.apache.openejb.resource.jdbc.IsolationLevels;
import org.apache.openejb.resource.jdbc.plugin.DataSourcePlugin;
import org.apache.openejb.resource.jdbc.pool.XADataSourceResource;
+import org.apache.openejb.util.reflection.Reflections;
-import javax.sql.DataSource;
import java.io.File;
import java.io.ObjectStreamException;
import java.io.Serializable;
@@ -36,9 +36,10 @@ import java.sql.SQLFeatureNotSupportedException;
import java.util.Properties;
import java.util.concurrent.locks.ReentrantLock;
import java.util.logging.Logger;
+import javax.sql.DataSource;
@SuppressWarnings({"UnusedDeclaration"})
-public class BasicManagedDataSource extends org.apache.commons.dbcp.managed.BasicManagedDataSource implements Serializable {
+public class BasicManagedDataSource extends org.apache.commons.dbcp2.managed.BasicManagedDataSource implements Serializable {
private static final ReentrantLock lock = new ReentrantLock();
private final String name;
@@ -210,7 +211,7 @@ public class BasicManagedDataSource extends org.apache.commons.dbcp.managed.Basi
final ReentrantLock l = lock;
l.lock();
try {
- super.setMaxWait((long) maxWait);
+ super.setMaxWaitMillis((long) maxWait);
} finally {
l.unlock();
}
@@ -220,14 +221,15 @@ public class BasicManagedDataSource extends org.apache.commons.dbcp.managed.Basi
final ReentrantLock l = lock;
l.lock();
try {
- if (super.dataSource != null) {
- return super.dataSource;
+ final Object dataSource = Reflections.get(this, "dataSource");
+ if (dataSource != null) {
+ return DataSource.class.cast(dataSource);
}
// check password codec if available
if (null != passwordCipher) {
final PasswordCipher cipher = PasswordCipherFactory.getPasswordCipher(passwordCipher);
- final String plainPwd = cipher.decrypt(password.toCharArray());
+ final String plainPwd = cipher.decrypt(getPassword().toCharArray());
// override previous password value
super.setPassword(plainPwd);
@@ -309,7 +311,7 @@ public class BasicManagedDataSource extends org.apache.commons.dbcp.managed.Basi
try {
if (null == this.logger) {
- this.logger = (Logger) DataSource.class.getDeclaredMethod("getParentLogger").invoke(super.dataSource);
+ this.logger = (Logger) DataSource.class.getDeclaredMethod("getParentLogger").invoke(createDataSource());
}
return this.logger;
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/DataSourceSerialization.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/DataSourceSerialization.java b/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/DataSourceSerialization.java
index 1ed3595..a136478 100644
--- a/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/DataSourceSerialization.java
+++ b/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/DataSourceSerialization.java
@@ -19,9 +19,9 @@ package org.apache.openejb.resource.jdbc.dbcp;
import org.apache.openejb.loader.SystemInstance;
import org.apache.openejb.spi.ContainerSystem;
-import javax.naming.NamingException;
import java.io.ObjectStreamException;
import java.io.Serializable;
+import javax.naming.NamingException;
public class DataSourceSerialization implements Serializable {
private final String name;
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/DbcpDataSource.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/DbcpDataSource.java b/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/DbcpDataSource.java
index 3e5defa..1c98bb3 100644
--- a/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/DbcpDataSource.java
+++ b/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/DbcpDataSource.java
@@ -17,12 +17,12 @@
package org.apache.openejb.resource.jdbc.dbcp;
-import org.apache.commons.dbcp.ConnectionFactory;
-import org.apache.commons.dbcp.DataSourceConnectionFactory;
+import org.apache.commons.dbcp2.ConnectionFactory;
+import org.apache.commons.dbcp2.DataSourceConnectionFactory;
import org.apache.openejb.resource.jdbc.DataSourceHelper;
-import javax.sql.DataSource;
import java.sql.SQLException;
+import javax.sql.DataSource;
public class DbcpDataSource extends BasicDataSource {
@@ -35,7 +35,7 @@ public class DbcpDataSource extends BasicDataSource {
@Override
protected ConnectionFactory createConnectionFactory() throws SQLException {
- return new DataSourceConnectionFactory(this.ds, username, password);
+ return new DataSourceConnectionFactory(this.ds, getUsername(), getPassword());
}
@Override
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/DbcpDataSourceCreator.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/DbcpDataSourceCreator.java b/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/DbcpDataSourceCreator.java
index bc0ca31..10be9a8 100644
--- a/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/DbcpDataSourceCreator.java
+++ b/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/DbcpDataSourceCreator.java
@@ -24,12 +24,12 @@ import org.apache.openejb.resource.jdbc.managed.xa.ManagedXADataSource;
import org.apache.openejb.resource.jdbc.pool.PoolDataSourceCreator;
import org.apache.openejb.resource.jdbc.pool.XADataSourceResource;
+import java.util.Properties;
import javax.sql.CommonDataSource;
import javax.sql.DataSource;
import javax.sql.XADataSource;
import javax.transaction.TransactionManager;
import javax.transaction.TransactionSynchronizationRegistry;
-import java.util.Properties;
// just a sample showing how to implement a datasourcecreator
// this one will probably not be used since dbcp has already the integration we need
@@ -50,26 +50,24 @@ public class DbcpDataSourceCreator extends PoolDataSourceCreator {
@Override
public CommonDataSource pool(final String name, final String driver, final Properties properties) {
- final String xa = String.class.cast(properties.remove("XaDataSource"));
- if (xa != null) {
- return XADataSourceResource.proxy(Thread.currentThread().getContextClassLoader(), xa);
- }
+ properties.setProperty("name", name);
- if (!properties.containsKey("JdbcDriver")) {
+ final String xa = String.class.cast(properties.remove("XaDataSource"));
+ if (xa == null && !properties.containsKey("JdbcDriver")) {
properties.setProperty("driverClassName", driver);
}
- properties.setProperty("name", name);
final BasicDataSource ds = build(BasicDataSource.class, properties);
ds.setDriverClassName(driver);
- // if (xa != null) ds.setDelegate(XADataSourceResource.proxy(Thread.currentThread().getContextClassLoader(), xa));
-
+ if (xa != null) {
+ ds.setDelegate(XADataSourceResource.proxy(Thread.currentThread().getContextClassLoader(), xa));
+ }
return ds;
}
@Override
protected void doDestroy(final CommonDataSource dataSource) throws Throwable {
- ((org.apache.commons.dbcp.BasicDataSource) dataSource).close();
+ ((org.apache.commons.dbcp2.BasicDataSource) dataSource).close();
}
@Override
@@ -87,8 +85,8 @@ public class DbcpDataSourceCreator extends PoolDataSourceCreator {
}
private <T> void setDriverLoader(final T object) {
- if (org.apache.commons.dbcp.BasicDataSource.class.isInstance(object)) {
- final org.apache.commons.dbcp.BasicDataSource basicDataSource = (org.apache.commons.dbcp.BasicDataSource) object;
+ if (org.apache.commons.dbcp2.BasicDataSource.class.isInstance(object)) {
+ final org.apache.commons.dbcp2.BasicDataSource basicDataSource = (org.apache.commons.dbcp2.BasicDataSource) object;
final ClassLoader contextClassLoader = Thread.currentThread().getContextClassLoader();
basicDataSource.setDriverClassLoader(contextClassLoader);
}
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/DbcpManagedDataSource.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/DbcpManagedDataSource.java b/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/DbcpManagedDataSource.java
index 077f5fb..5d6025c 100644
--- a/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/DbcpManagedDataSource.java
+++ b/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/DbcpManagedDataSource.java
@@ -17,19 +17,19 @@
package org.apache.openejb.resource.jdbc.dbcp;
-import org.apache.commons.dbcp.ConnectionFactory;
-import org.apache.commons.dbcp.DataSourceConnectionFactory;
-import org.apache.commons.dbcp.managed.DataSourceXAConnectionFactory;
-import org.apache.commons.dbcp.managed.LocalXAConnectionFactory;
-import org.apache.commons.dbcp.managed.TransactionRegistry;
-import org.apache.commons.dbcp.managed.XAConnectionFactory;
+import org.apache.commons.dbcp2.ConnectionFactory;
+import org.apache.commons.dbcp2.DataSourceConnectionFactory;
+import org.apache.commons.dbcp2.managed.DataSourceXAConnectionFactory;
+import org.apache.commons.dbcp2.managed.LocalXAConnectionFactory;
+import org.apache.commons.dbcp2.managed.TransactionRegistry;
+import org.apache.commons.dbcp2.managed.XAConnectionFactory;
import org.apache.openejb.resource.jdbc.DataSourceHelper;
+import java.lang.reflect.Field;
+import java.sql.SQLException;
import javax.sql.CommonDataSource;
import javax.sql.DataSource;
import javax.sql.XADataSource;
-import java.lang.reflect.Field;
-import java.sql.SQLException;
public class DbcpManagedDataSource extends BasicManagedDataSource {
@@ -58,14 +58,14 @@ public class DbcpManagedDataSource extends BasicManagedDataSource {
// Create the XAConectionFactory using the XA data source
final XADataSource xaDataSourceInstance = (XADataSource) ds;
- final XAConnectionFactory xaConnectionFactory = new DataSourceXAConnectionFactory(getTransactionManager(), xaDataSourceInstance, username, password);
+ final XAConnectionFactory xaConnectionFactory = new DataSourceXAConnectionFactory(getTransactionManager(), xaDataSourceInstance, getUsername(), getPassword());
setTransactionRegistry(xaConnectionFactory.getTransactionRegistry());
return xaConnectionFactory;
}
// If xa data source is not specified a DriverConnectionFactory is created and wrapped with a LocalXAConnectionFactory
- final ConnectionFactory connectionFactory = new DataSourceConnectionFactory(DataSource.class.cast(ds), username, password);
+ final ConnectionFactory connectionFactory = new DataSourceConnectionFactory(DataSource.class.cast(ds), getUsername(), getPassword());
final XAConnectionFactory xaConnectionFactory = new LocalXAConnectionFactory(getTransactionManager(), connectionFactory);
setTransactionRegistry(xaConnectionFactory.getTransactionRegistry());
return xaConnectionFactory;
@@ -73,7 +73,7 @@ public class DbcpManagedDataSource extends BasicManagedDataSource {
public void setTransactionRegistry(final TransactionRegistry registry) {
try {
- final Field field = org.apache.commons.dbcp.managed.BasicManagedDataSource.class.getDeclaredField("transactionRegistry");
+ final Field field = org.apache.commons.dbcp2.managed.BasicManagedDataSource.class.getDeclaredField("transactionRegistry");
field.setAccessible(true);
field.set(this, registry);
} catch (final Throwable e) {
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/JMXBasicDataSource.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/JMXBasicDataSource.java b/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/JMXBasicDataSource.java
index c8da49b..d0e6e30 100644
--- a/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/JMXBasicDataSource.java
+++ b/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/dbcp/JMXBasicDataSource.java
@@ -17,7 +17,7 @@
package org.apache.openejb.resource.jdbc.dbcp;
-import org.apache.commons.dbcp.BasicDataSource;
+import org.apache.commons.dbcp2.BasicDataSource;
import org.apache.openejb.api.internal.Internal;
import org.apache.openejb.api.jmx.Description;
import org.apache.openejb.api.jmx.ManagedAttribute;
@@ -26,11 +26,11 @@ import org.apache.openejb.monitoring.DynamicMBeanWrapper;
import org.apache.openejb.monitoring.LocalMBeanServer;
import org.apache.openejb.monitoring.ObjectNameBuilder;
-import javax.management.MBeanServer;
-import javax.management.ObjectName;
import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Statement;
+import javax.management.MBeanServer;
+import javax.management.ObjectName;
// @MBean: don't put it since it is not a pojo
@Internal
@@ -110,7 +110,7 @@ public class JMXBasicDataSource {
@Description("The maximum number of active connections that can be allocated from this pool at the same time,"
+ " or negative for no limit.")
public int getMaxActive() {
- return ds.getMaxActive();
+ return ds.getMaxTotal();
}
@ManagedAttribute
@@ -158,37 +158,37 @@ public class JMXBasicDataSource {
@Description("The maximum number of milliseconds that the pool will wait (when there are no available connections) "
+ "for a connection to be returned before throwing an exception, or <= 0 to wait indefinitely.")
public long getMaxWait() {
- return ds.getMaxWait();
+ return ds.getMaxWaitMillis();
}
@ManagedAttribute
@Description("The default auto-commit state of connections created by this pool.")
public boolean getDefaultAutoCommit() {
- return ds.getDefaultAutoCommit();
+ return Boolean.TRUE.equals(ds.getDefaultAutoCommit());
}
@ManagedAttribute
@Description("Prepared statement pooling for this pool.")
public boolean getPoolPreparedStatements() {
- return ds.isPoolPreparedStatements();
+ return Boolean.TRUE.equals(ds.isPoolPreparedStatements());
}
@ManagedAttribute
@Description("The indication of whether objects will be validated before being borrowed from the pool.")
public boolean getTestOnBorrow() {
- return ds.getTestOnBorrow();
+ return Boolean.TRUE.equals(ds.getTestOnBorrow());
}
@ManagedAttribute
@Description("The indication of whether objects will be validated before being returned to the pool.")
public boolean getTestOnReturn() {
- return ds.getTestOnReturn();
+ return Boolean.TRUE.equals(ds.getTestOnReturn());
}
@ManagedAttribute
@Description("The indication of whether objects will be validated by the idle object evictor (if any).")
public boolean getTestWhileIdle() {
- return ds.getTestWhileIdle();
+ return Boolean.TRUE.equals(ds.getTestWhileIdle());
}
@ManagedAttribute
@@ -200,7 +200,7 @@ public class JMXBasicDataSource {
@ManagedAttribute
@Description("The default read-only state of connections created by this pool.")
public boolean getDefaultReadOnly() {
- return ds.getDefaultReadOnly();
+ return Boolean.TRUE.equals(ds.getDefaultReadOnly());
}
@ManagedAttribute
@@ -303,7 +303,7 @@ public class JMXBasicDataSource {
@Description("Set the maximum number of active connections that can be allocated from this pool at the same time,"
+ " or negative for no limit.")
public void setMaxActive(final int max) {
- ds.setMaxActive(max);
+ ds.setMaxTotal(max);
}
@ManagedAttribute
@@ -351,7 +351,7 @@ public class JMXBasicDataSource {
@Description("Set the maximum number of milliseconds that the pool will wait (when there are no available connections) "
+ "for a connection to be returned before throwing an exception, or <= 0 to wait indefinitely.")
public void setMaxWait(final long max) {
- ds.setMaxWait(max);
+ ds.setMaxWaitMillis(max);
}
@ManagedAttribute
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/pool/DefaultDataSourceCreator.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/pool/DefaultDataSourceCreator.java b/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/pool/DefaultDataSourceCreator.java
index d531b5b..9f5be66 100644
--- a/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/pool/DefaultDataSourceCreator.java
+++ b/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/pool/DefaultDataSourceCreator.java
@@ -72,11 +72,11 @@ public class DefaultDataSourceCreator extends DbcpDataSourceCreator {
@Override
public void destroy(final Object object) throws Throwable {
- ((org.apache.commons.dbcp.BasicDataSource) object).close();
+ ((org.apache.commons.dbcp2.BasicDataSource) object).close();
}
@Override
protected void doDestroy(final CommonDataSource dataSource) throws Throwable {
- ((org.apache.commons.dbcp.BasicDataSource) dataSource).close();
+ ((org.apache.commons.dbcp2.BasicDataSource) dataSource).close();
}
}
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/DataSourceDefinitionGlobalJPATest.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/DataSourceDefinitionGlobalJPATest.java b/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/DataSourceDefinitionGlobalJPATest.java
index 8159c07..4baec5c 100644
--- a/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/DataSourceDefinitionGlobalJPATest.java
+++ b/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/DataSourceDefinitionGlobalJPATest.java
@@ -16,8 +16,8 @@
*/
package org.apache.openejb.assembler.classic;
-import org.apache.commons.dbcp.DelegatingConnection;
-import org.apache.commons.dbcp.managed.ManagedConnection;
+import org.apache.commons.dbcp2.DelegatingConnection;
+import org.apache.commons.dbcp2.managed.ManagedConnection;
import org.apache.openejb.jee.jpa.unit.Persistence;
import org.apache.openejb.junit.ApplicationComposer;
import org.apache.openejb.resource.jdbc.dbcp.BasicManagedDataSource;
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/DataSourceDefinitionJndiTest.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/DataSourceDefinitionJndiTest.java b/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/DataSourceDefinitionJndiTest.java
index c632210..80abc0c 100644
--- a/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/DataSourceDefinitionJndiTest.java
+++ b/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/DataSourceDefinitionJndiTest.java
@@ -16,8 +16,8 @@
*/
package org.apache.openejb.assembler.classic;
-import org.apache.commons.dbcp.DelegatingConnection;
-import org.apache.commons.dbcp.managed.ManagedConnection;
+import org.apache.commons.dbcp2.DelegatingConnection;
+import org.apache.commons.dbcp2.managed.ManagedConnection;
import org.apache.openejb.junit.ApplicationComposer;
import org.apache.openejb.loader.SystemInstance;
import org.apache.openejb.resource.jdbc.dbcp.DbcpManagedDataSource;
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/DataSourceDefinitionPlaceHolderTest.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/DataSourceDefinitionPlaceHolderTest.java b/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/DataSourceDefinitionPlaceHolderTest.java
index d98b9ba..b010f87 100644
--- a/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/DataSourceDefinitionPlaceHolderTest.java
+++ b/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/DataSourceDefinitionPlaceHolderTest.java
@@ -16,7 +16,7 @@
*/
package org.apache.openejb.assembler.classic;
-import org.apache.commons.dbcp.BasicDataSource;
+import org.apache.commons.dbcp2.BasicDataSource;
import org.apache.openejb.junit.ApplicationComposer;
import org.apache.openejb.loader.SystemInstance;
import org.apache.openejb.spi.ContainerSystem;
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/OpenEJBXmlByModuleTest.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/OpenEJBXmlByModuleTest.java b/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/OpenEJBXmlByModuleTest.java
index cf4f873..967164c 100644
--- a/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/OpenEJBXmlByModuleTest.java
+++ b/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/OpenEJBXmlByModuleTest.java
@@ -16,7 +16,7 @@
*/
package org.apache.openejb.assembler.classic;
-import org.apache.commons.dbcp.BasicDataSource;
+import org.apache.commons.dbcp2.BasicDataSource;
import org.apache.openejb.OpenEJB;
import org.apache.openejb.OpenEJBException;
import org.apache.openejb.config.AppModule;
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/ResourcesJsonTest.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/ResourcesJsonTest.java b/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/ResourcesJsonTest.java
index eda6287..b8f1865 100644
--- a/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/ResourcesJsonTest.java
+++ b/container/openejb-core/src/test/java/org/apache/openejb/assembler/classic/ResourcesJsonTest.java
@@ -16,7 +16,7 @@
*/
package org.apache.openejb.assembler.classic;
-import org.apache.commons.dbcp.BasicDataSource;
+import org.apache.commons.dbcp2.BasicDataSource;
import org.apache.openejb.OpenEJB;
import org.apache.openejb.OpenEJBException;
import org.apache.openejb.config.AppModule;
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/container/openejb-core/src/test/java/org/apache/openejb/config/JMXDataSourceTest.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/test/java/org/apache/openejb/config/JMXDataSourceTest.java b/container/openejb-core/src/test/java/org/apache/openejb/config/JMXDataSourceTest.java
index 67af178..279d3b6 100644
--- a/container/openejb-core/src/test/java/org/apache/openejb/config/JMXDataSourceTest.java
+++ b/container/openejb-core/src/test/java/org/apache/openejb/config/JMXDataSourceTest.java
@@ -107,7 +107,6 @@ public class JMXDataSourceTest {
final MBeanInfo mBeanInfo = ManagementFactory.getPlatformMBeanServer().getMBeanInfo(on);
assertNotNull(mBeanInfo);
final Map<String, Object> map = new HashMap<String, Object>();
- final int found = 0;
for (final MBeanAttributeInfo mBeanAttributeInfo : mBeanInfo.getAttributes()) {
final String name = mBeanAttributeInfo.getName();
final Object value = ManagementFactory.getPlatformMBeanServer().getAttribute(on, name);
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/container/openejb-core/src/test/java/org/apache/openejb/config/JSonConfigTest.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/test/java/org/apache/openejb/config/JSonConfigTest.java b/container/openejb-core/src/test/java/org/apache/openejb/config/JSonConfigTest.java
index 104073b..8d84925 100644
--- a/container/openejb-core/src/test/java/org/apache/openejb/config/JSonConfigTest.java
+++ b/container/openejb-core/src/test/java/org/apache/openejb/config/JSonConfigTest.java
@@ -58,7 +58,7 @@ public class JSonConfigTest {
public void checkDsIsHere() throws NamingException {
final BasicDataSource ds = BasicDataSource.class.cast(ctx.lookup("openejb:Resource/json-datasource"));
assertNotNull(ds);
- assertEquals(123, ds.getMaxActive());
+ assertEquals(123, ds.getMaxTotal());
assertEquals("jdbc:hsqldb:mem:json", ds.getJdbcUrl());
}
@@ -85,7 +85,7 @@ public class JSonConfigTest {
assertEquals(1, openejb.getResource().size());
final Resource resource = openejb.getResource().iterator().next();
assertEquals("json-datasource", resource.getId());
- assertTrue("123".equals(resource.getProperties().getProperty("MaxActive")));
+ assertTrue("123".equals(resource.getProperties().getProperty("MaxTotal")));
assertTrue("jdbc:hsqldb:mem:json".equals(resource.getProperties().getProperty("JdbcUrl")));
assertEquals(1, openejb.getDeployments().size());
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/container/openejb-core/src/test/java/org/apache/openejb/core/cmp/jpa/JpaTest.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/test/java/org/apache/openejb/core/cmp/jpa/JpaTest.java b/container/openejb-core/src/test/java/org/apache/openejb/core/cmp/jpa/JpaTest.java
index ac14373..a9c38a9 100644
--- a/container/openejb-core/src/test/java/org/apache/openejb/core/cmp/jpa/JpaTest.java
+++ b/container/openejb-core/src/test/java/org/apache/openejb/core/cmp/jpa/JpaTest.java
@@ -295,7 +295,7 @@ public class JpaTest extends TestCase {
ds.setUrl("jdbc:hsqldb:mem:JpaTest");
ds.setUsername("sa");
ds.setPassword("");
- ds.setMaxActive(100);
+ ds.setMaxTotal(100);
ds.setMaxWait(10000);
ds.setTestOnBorrow(true);
return ds;
@@ -307,7 +307,7 @@ public class JpaTest extends TestCase {
ds.setUrl("jdbc:hsqldb:mem:JpaTest");
ds.setUsername("sa");
ds.setPassword("");
- ds.setMaxActive(100);
+ ds.setMaxTotal(100);
ds.setMaxWait(10000);
ds.setTestOnBorrow(true);
return ds;
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/container/openejb-core/src/test/java/org/apache/openejb/core/cmp/jpa/UnenhancedTest.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/test/java/org/apache/openejb/core/cmp/jpa/UnenhancedTest.java b/container/openejb-core/src/test/java/org/apache/openejb/core/cmp/jpa/UnenhancedTest.java
index 8e22b7c..a3c3421 100644
--- a/container/openejb-core/src/test/java/org/apache/openejb/core/cmp/jpa/UnenhancedTest.java
+++ b/container/openejb-core/src/test/java/org/apache/openejb/core/cmp/jpa/UnenhancedTest.java
@@ -260,7 +260,7 @@ public class UnenhancedTest extends TestCase {
ds.setUrl("jdbc:hsqldb:mem:JpaTest");
ds.setUsername("sa");
ds.setPassword("");
- ds.setMaxActive(100);
+ ds.setMaxTotal(100);
ds.setMaxWait(10000);
ds.setTestOnBorrow(true);
return ds;
@@ -272,7 +272,7 @@ public class UnenhancedTest extends TestCase {
ds.setUrl("jdbc:hsqldb:mem:JpaTest");
ds.setUsername("sa");
ds.setPassword("");
- ds.setMaxActive(100);
+ ds.setMaxTotal(100);
ds.setMaxWait(10000);
ds.setTestOnBorrow(true);
return ds;
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/container/openejb-core/src/test/java/org/apache/openejb/resource/jdbc/IgnoreDefaultTest.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/test/java/org/apache/openejb/resource/jdbc/IgnoreDefaultTest.java b/container/openejb-core/src/test/java/org/apache/openejb/resource/jdbc/IgnoreDefaultTest.java
index 806ef11..b65e789 100644
--- a/container/openejb-core/src/test/java/org/apache/openejb/resource/jdbc/IgnoreDefaultTest.java
+++ b/container/openejb-core/src/test/java/org/apache/openejb/resource/jdbc/IgnoreDefaultTest.java
@@ -59,8 +59,8 @@ public class IgnoreDefaultTest {
private void check(final String id, final String user, final String password) throws NamingException {
final DataSource ds = (DataSource) assembler.getContainerSystem().getJNDIContext().lookup("openejb/Resource/" + id);
- assertThat(ds, instanceOf(org.apache.commons.dbcp.BasicDataSource.class));
- assertEquals(user, ((org.apache.commons.dbcp.BasicDataSource) ds).getUsername());
- assertEquals(password, ((org.apache.commons.dbcp.BasicDataSource) ds).getPassword());
+ assertThat(ds, instanceOf(org.apache.commons.dbcp2.BasicDataSource.class));
+ assertEquals(user, ((org.apache.commons.dbcp2.BasicDataSource) ds).getUsername());
+ assertEquals(password, ((org.apache.commons.dbcp2.BasicDataSource) ds).getPassword());
}
}
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/container/openejb-core/src/test/java/org/apache/openejb/resource/jdbc/JtaFailOverRouterTest.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/test/java/org/apache/openejb/resource/jdbc/JtaFailOverRouterTest.java b/container/openejb-core/src/test/java/org/apache/openejb/resource/jdbc/JtaFailOverRouterTest.java
index eb2ff74..05a1b40 100644
--- a/container/openejb-core/src/test/java/org/apache/openejb/resource/jdbc/JtaFailOverRouterTest.java
+++ b/container/openejb-core/src/test/java/org/apache/openejb/resource/jdbc/JtaFailOverRouterTest.java
@@ -24,17 +24,17 @@ import org.apache.openejb.testng.PropertiesBuilder;
import org.junit.Test;
import org.junit.runner.RunWith;
+import java.sql.Connection;
+import java.sql.SQLException;
+import java.util.Properties;
import javax.annotation.Resource;
import javax.ejb.EJB;
import javax.ejb.Singleton;
import javax.sql.DataSource;
-import java.sql.Connection;
-import java.sql.SQLException;
-import java.util.Properties;
import static org.apache.openejb.resource.jdbc.FailOverRouters.datasource;
-import static org.apache.openejb.resource.jdbc.FailOverRouters.url;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertSame;
import static org.junit.Assert.fail;
@RunWith(ApplicationComposer.class)
@@ -55,7 +55,9 @@ public class JtaFailOverRouterTest {
public Properties configuration() {
return datasource(datasource(new PropertiesBuilder(), "fo1"), "fo2")
.property("fo1.JtaManaged", "true")
+ .property("fo1.accessToUnderlyingConnectionAllowed", "true")
.property("fo2.JtaManaged", "true")
+ .property("fo2.accessToUnderlyingConnectionAllowed", "true")
.property("router", "new://Resource?class-name=" + FailOverRouter.class.getName())
.property("router.datasourceNames", "fo1,fo2")
.property("router.strategy", "reverse")
@@ -75,25 +77,17 @@ public class JtaFailOverRouterTest {
private DataSource ds;
public void inTx(final String url) {
- Connection firstConnection = null;
+ Connection firstConnection;
try {
- firstConnection = ds.getConnection();
- assertEquals(url, url(firstConnection));
- for (int i = 0; i < 1; i++) { // 4 is kind of random, > 2 is enough
- final Connection anotherConnection = ds.getConnection();
- assertEquals(firstConnection, anotherConnection); // in tx so should be the same ds and if the ds is JtaManaged same anotherConnection
- assertEquals(url, url(anotherConnection));
+ firstConnection = org.apache.commons.dbcp2.managed.ManagedConnection.class.cast(ds.getConnection()).getInnermostDelegate();
+ assertEquals(url, firstConnection.getMetaData().getURL());
+ for (int i = 0; i < 4; i++) { // 4 is kind of random, > 2 is enough
+ final Connection anotherConnection = org.apache.commons.dbcp2.managed.ManagedConnection.class.cast(ds.getConnection()).getInnermostDelegate();
+ assertSame(firstConnection, anotherConnection); // in tx so should be the same ds and if the ds is JtaManaged same anotherConnection
+ assertEquals(url, anotherConnection.getMetaData().getURL());
}
} catch (final SQLException e) {
fail(e.getMessage());
- } finally {
- try {
- if (firstConnection != null) {
- firstConnection.close();
- }
- } catch (final Exception e) {
- // no-op
- }
}
}
}
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/container/openejb-core/src/test/java/org/apache/openejb/resource/jdbc/XADataSourceTest.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/test/java/org/apache/openejb/resource/jdbc/XADataSourceTest.java b/container/openejb-core/src/test/java/org/apache/openejb/resource/jdbc/XADataSourceTest.java
index d01407a..f2e8d24 100644
--- a/container/openejb-core/src/test/java/org/apache/openejb/resource/jdbc/XADataSourceTest.java
+++ b/container/openejb-core/src/test/java/org/apache/openejb/resource/jdbc/XADataSourceTest.java
@@ -27,6 +27,7 @@ import org.apache.openejb.resource.jdbc.pool.DataSourceCreator;
import org.apache.openejb.testing.Configuration;
import org.apache.openejb.testing.Module;
import org.hsqldb.jdbc.pool.JDBCXADataSource;
+import org.hsqldb.jdbcDriver;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -59,6 +60,7 @@ public class XADataSourceTest {
} catch (final EJBException ejbEx) {
assertThat(ejbEx.getCause(), instanceOf(IllegalArgumentException.class));
}
+ ejb.assertPersisted();
}
@Configuration
@@ -90,23 +92,22 @@ public class XADataSourceTest {
// pooled "XA" datasources
p.put("xadb", "new://Resource?type=DataSource");
- p.put("xadb.xaDataSource", "xa");// to be xa
+ p.put("xadb.XaDataSource", "xa"); // to be xa
p.put("xadb.JtaManaged", "true");
p.put("xadb2", "new://Resource?type=DataSource");
- p.put("xadb2.xaDataSource", "xa2");// to be xa
+ p.put("xadb2.XaDataSource", "xa2"); // to be xa
p.put("xadb2.JtaManaged", "true");
// non jta datasources
- p.put("xadbn", "new://Resource?type=DataSource");
- p.put("xadbn.JdbcDriver", JDBCXADataSource.class.getName());
- p.put("xadbn.JdbcUrl", "jdbc:hsqldb:mem:xa");
- p.put("xadbn.UserName", "sa");
- p.put("xadbn.Password", "");
- p.put("xadbn.JtaManaged", "false");
+ p.put("xadbn", "new://Resource?class-name=" + JDBCXADataSource.class.getName());
+ p.put("xadbn.JdbcDriver", jdbcDriver.class.getName());
+ p.put("xadbn.url", "jdbc:hsqldb:mem:xa");
+ p.put("xadbn.user", "sa");
+ p.put("xadbn.password", "");
p.put("xadbn2", "new://Resource?type=DataSource");
- p.put("xadbn2.JdbcDriver", JDBCXADataSource.class.getName());
+ p.put("xadbn2.JdbcDriver", jdbcDriver.class.getName());
p.put("xadbn2.JdbcUrl", "jdbc:hsqldb:mem:xa2");
p.put("xadbn2.UserName", "sa");
p.put("xadbn2.Password", "");
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/container/openejb-core/src/test/resources/openejb.json
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/test/resources/openejb.json b/container/openejb-core/src/test/resources/openejb.json
index b44a419..2d30a7c 100644
--- a/container/openejb-core/src/test/resources/openejb.json
+++ b/container/openejb-core/src/test/resources/openejb.json
@@ -15,7 +15,7 @@
],
"properties": {
"JdbcUrl": "jdbc:hsqldb:mem:json",
- "MaxActive": 123,
+ "MaxTotal": 123,
"JtaManaged": false
}
}
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 1b27a8c..b8a1e8c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -150,8 +150,8 @@
<commons-cli.version>1.2</commons-cli.version>
<commons-logging.version>1.1.1</commons-logging.version>
<commons-logging-api.version>1.1</commons-logging-api.version>
- <commons-dbcp.version>1.4</commons-dbcp.version>
- <commons-pool.version>1.5.7</commons-pool.version>
+ <commons-dbcp.version>2.1</commons-dbcp.version>
+ <commons-pool.version>2.3</commons-pool.version>
<commons-collections.version>3.2.1</commons-collections.version>
<commons-codec.version>1.9</commons-codec.version>
<commons-fileupload.version>1.3.1</commons-fileupload.version>
@@ -1535,24 +1535,19 @@
<artifactId>swizzle-stream</artifactId>
<version>1.6.2</version>
</dependency>
- <!-- <dependency>
- <groupId>org.apache.tomee</groupId>
- <artifactId>commons-dbcp-all</artifactId>
- <version>1.3-r699049</version>
- </dependency> -->
<dependency>
<groupId>axis</groupId>
<artifactId>axis</artifactId>
<version>1.4</version>
</dependency>
<dependency>
- <groupId>commons-dbcp</groupId>
- <artifactId>commons-dbcp</artifactId>
+ <groupId>org.apache.commons</groupId>
+ <artifactId>commons-dbcp2</artifactId>
<version>${commons-dbcp.version}</version>
</dependency>
<dependency>
- <groupId>commons-pool</groupId>
- <artifactId>commons-pool</artifactId>
+ <groupId>org.apache.commons</groupId>
+ <artifactId>commons-pool2</artifactId>
<version>${commons-pool.version}</version>
</dependency>
<dependency>
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/server/openejb-hsql/pom.xml
----------------------------------------------------------------------
diff --git a/server/openejb-hsql/pom.xml b/server/openejb-hsql/pom.xml
index 21a4420..23b40d4 100644
--- a/server/openejb-hsql/pom.xml
+++ b/server/openejb-hsql/pom.xml
@@ -52,13 +52,13 @@
<artifactId>hsqldb</artifactId>
</dependency>
<dependency>
- <groupId>commons-dbcp</groupId>
- <artifactId>commons-dbcp</artifactId>
+ <groupId>org.apache.commons</groupId>
+ <artifactId>commons-dbcp2</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
- <groupId>commons-pool</groupId>
- <artifactId>commons-pool</artifactId>
+ <groupId>org.apache.commons</groupId>
+ <artifactId>commons-pool2</artifactId>
<scope>provided</scope>
</dependency>
</dependencies>
http://git-wip-us.apache.org/repos/asf/tomee/blob/9beea693/server/openejb-server/pom.xml
----------------------------------------------------------------------
diff --git a/server/openejb-server/pom.xml b/server/openejb-server/pom.xml
index 272a221..0608707 100644
--- a/server/openejb-server/pom.xml
+++ b/server/openejb-server/pom.xml
@@ -212,8 +212,8 @@
org.apache.activemq.store.memory;version="[5.8,6.0)";resolution:=optional,
org.apache.commons.beanutils,
org.apache.commons.cli;version="[1.2,2)",
- org.apache.commons.dbcp;version="[1.4,2)",
- org.apache.commons.dbcp.managed;version="[1.4,2)",
+ org.apache.commons.dbcp2;version="[2,3)",
+ org.apache.commons.dbcp2.managed;version="[2,3)",
org.apache.commons.lang;version="[2.6,2.9)",
org.apache.commons.lang3;version="[3.1,4)",
org.apache.geronimo.connector;version="[3.0,4)",