Hi all,

I'm trying to setup a XA Datasource configuration in Tomcat 7 with an
Oracle database.

I have spent a long time trying to set that configuration up without any
success.

I have read the  following blog entry which is i think the only ressource
that deals with this subject :

http://www.tomcatexpert.com/blog/2010/04/01/configuring-jdbc-pool-high-concurrency

with the "Pooling connections from other data sources" paragraph.

Here is the configuration i have done in my context.xml file :

  <Resource
> factory="org.apache.tomcat.jdbc.naming.GenericNamingResourcesFactory"
> name="jdbc/mydatasource-xa" password="password"
> type="oracle.jdbc.xa.client.OracleXADataSource" user="userName"
> databaseName="databaseName" serverName="myDatabaseHost" portNumber="1522" />
>


>   <Resource abandonWhenPercentageFull="50" auth="Container"
> dataSourceJNDI="mydatasource-xa"
> factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" initialSize="5"
> jdbcInterceptors="ResetAbandonedTimer" logAbandoned="true" maxActive="20"
> maxAge="0" maxIdle="10" maxWait="0" minEvictableIdleTimeMillis="120000"
> minIdle="5" name="jdbc/mydatasource" removeAbandoned="true"
> removeAbandonedTimeout="600" testOnBorrow="true"
> timeBetweenEvictionRunsMillis="30000" type="javax.sql.XADataSource"
> validationInterval="30000" validationQuery="select 1 from dual" />


and here is the exception i have when the application starts :

2014-08-27 08:25:49,748 [default-startStop-1] ERROR
> org.apache.tomcat.jdbc.pool.ConnectionPool- Unable to create initial
> connections of pool.
> java.sql.SQLException: Invalid Oracle URL specified:
> OracleDataSource.makeURL
>  at oracle.jdbc.pool.OracleDataSource.makeURL(OracleDataSource.java:1277)
> at oracle.jdbc.pool.OracleDataSource.getURL(OracleDataSource.java:1025)
>  at
> oracle.jdbc.xa.client.OracleXADataSource.getPooledConnection(OracleXADataSource.java:205)
> at
> oracle.jdbc.xa.client.OracleXADataSource.getXAConnection(OracleXADataSource.java:156)
>  at
> oracle.jdbc.xa.client.OracleXADataSource.getXAConnection(OracleXADataSource.java:101)
> at
> org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDataSource(PooledConnection.java:218)
>  at
> org.apache.tomcat.jdbc.pool.PooledConnection.connect(PooledConnection.java:180)
> at
> org.apache.tomcat.jdbc.pool.ConnectionPool.createConnection(ConnectionPool.java:701)
>  at
> org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:635)
> at org.apache.tomcat.jdbc.pool.ConnectionPool.init(ConnectionPool.java:486)
>  at
> org.apache.tomcat.jdbc.pool.ConnectionPool.<init>(ConnectionPool.java:144)
> at
> org.apache.tomcat.jdbc.pool.DataSourceProxy.pCreatePool(DataSourceProxy.java:116)
>  at
> org.apache.tomcat.jdbc.pool.DataSourceProxy.createPool(DataSourceProxy.java:103)
> at
> org.apache.tomcat.jdbc.pool.DataSourceFactory.createDataSource(DataSourceFactory.java:554)
>  at
> org.apache.tomcat.jdbc.pool.DataSourceFactory.getObjectInstance(DataSourceFactory.java:242)
> at
> org.apache.naming.factory.ResourceFactory.getObjectInstance(ResourceFactory.java:141)
>  at
> javax.naming.spi.NamingManager.getObjectInstance(NamingManager.java:321)
> at org.apache.naming.NamingContext.lookup(NamingContext.java:842)



Any help would be greatly appreciated.

Regards.
Sylvain

Reply via email to