Fix 'Not supported by BasicDataSource' Setup or Startup Error

Still need help?

The Atlassian Community is here for you.

Ask the community

Symptoms

When running Tomcat 6, connecting to the database using a Tomcat-configured DataSource, Confluence will not start. During setup you see the following error message:

Setup Datasource Database Failed 
Setting up datasource database instance failed. You can either try it again 
or or go back to the database selection page:

Restart Database Setup
Setup Datasource Database Again

The following error(s) occurred: 
Configuring the database failed. Couldn't create the database schema. 
Could not open Hibernate Session for transaction; nested exception is 
java.lang.UnsupportedOperationException: Not supported by BasicDataSource 
Context initialization failed: Could not open Hibernate Session for 
transaction; nested exception is java.lang.UnsupportedOperationException: 
Not supported by BasicDataSource 
---------------------

Or, during start-up the following stack-trace is logged:

org.springframework.transaction.CannotCreateTransactionException: 
       Could not open Hibernate Session for transaction; 
       nested exception is java.lang.UnsupportedOperationException: Not supported by BasicDataSource
Caused by: java.lang.UnsupportedOperationException: Not supported by BasicDataSource
        at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:899)
        at net.sf.hibernate.connection.DatasourceConnectionProvider.getConnection
           (DatasourceConnectionProvider.java:56)
        at net.sf.hibernate.impl.BatcherImpl.openConnection(BatcherImpl.java:292)
        at net.sf.hibernate.impl.SessionImpl.connect(SessionImpl.java:3373)
        at net.sf.hibernate.impl.SessionImpl.connection(SessionImpl.java:3333)

Cause

Tomcat 6 does not allow applications to authenticate DataSource connections. You must make sure that you have supplied a username and password in the DataSource configuration in your Tomcat config files, for example:

<Resource name="jdbc/confluence" auth="Container" type="javax.sql.DataSource"
   username="cmiller"
   password="mysecret"
   driverClassName="org.postgresql.Driver"
   url="jdbc:postgresql://localhost/t6test"
   maxActive="20"/>

Resolution

  1. Shut down Confluence
  2. Open the confluence.cfg.xml file in your Confluence Home directory in a text editor
  3. Deletethe following lines if you find them:
    • <property name="hibernate.connection.password">your-password</property>
    • <property name="hibernate.connection.username">your-username</property>
  4. Save the modified file
  5. Restart Confluence

Last modified on Mar 30, 2016

Was this helpful?

Yes
No
Provide feedback about this article
Powered by Confluence and Scroll Viewport.