diff --git a/src/main/java/com/alibaba/druid/pool/DruidDataSource.java b/src/main/java/com/alibaba/druid/pool/DruidDataSource.java index ebdf806952..4cda1552a8 100644 --- a/src/main/java/com/alibaba/druid/pool/DruidDataSource.java +++ b/src/main/java/com/alibaba/druid/pool/DruidDataSource.java @@ -1438,6 +1438,10 @@ public class DruidDataSource extends DruidAbstractDataSource implements DruidDat final String factoryName = className + "Factory"; // XXX: not robust Reference ref = new Reference(className, factoryName, null); ref.add(new StringRefAddr("instanceKey", instanceKey)); + ref.add(new StringRefAddr("url", this.getUrl())); + ref.add(new StringRefAddr("username", this.getUsername())); + ref.add(new StringRefAddr("password",this.getPassword())); + //TODO ADD OTHER PROPERTIES return ref; } diff --git a/src/main/java/com/alibaba/druid/pool/DruidDataSourceFactory.java b/src/main/java/com/alibaba/druid/pool/DruidDataSourceFactory.java index 46df39b4a6..ced815a842 100644 --- a/src/main/java/com/alibaba/druid/pool/DruidDataSourceFactory.java +++ b/src/main/java/com/alibaba/druid/pool/DruidDataSourceFactory.java @@ -95,9 +95,9 @@ public class DruidDataSourceFactory implements ObjectFactory { return null; } Reference ref = (Reference) obj; - if (!"javax.sql.DataSource".equals(ref.getClassName())) { - return null; - } + //if (!"javax.sql.DataSource".equals(ref.getClassName())) { + // return null; + //} Properties properties = new Properties(); for (int i = 0; i < ALL_PROPERTIES.length; i++) {