Apache Tomee 1.7 Plume Datasource configuration

In this example we will configure an postgresql datasource.

First download an place in /lib folder the postgresql JDBC driver jar

Open /conf/tomee.xml and put the datasource resource block:

<?xml version="1.0" encoding="UTF-8"?>
<tomee>
  <!-- see http://tomee.apache.org/containers-and-resources.html -->
  
  <Resource id="censocat_db" type="DataSource">
    #  PostgreSQL connection
    JdbcDriver   org.postgresql.Driver
    JdbcUrl  jdbc:postgresql://localhost/censocat
    UserName     sisapp
    Password     sis98
  </Resource>
  
</tomee>

Persistence.xml configuration:

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
  <persistence-unit name="CensoCat_PU" transaction-type="JTA">
    <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
    <jta-data-source>censocat_db</jta-data-source>
    <shared-cache-mode>NONE</shared-cache-mode>
    <properties>
      <property name="eclipselink.ddl-generation" value="create-tables"/>
      <property name="eclipselink.ddl-generation.output-mode" value="database"/>
    </properties>
  </persistence-unit>
</persistence>

EJB injection of EM:

    @PersistenceContext(unitName = "CensoCat_PU")
    private EntityManager entityManager;

Common DataSource Configurations share [gp] share [fb] share [tw] share [pin] contribute
See the DataSource Configuration for details on all configuration options for DataSources.

HSQLDB
The drivers are included with OpenEJB 3.0 and HSQLDB is the default database.

<Resource id="HSQLDB Database" type="DataSource">
    JdbcDriver org.hsqldb.jdbcDriver
    JdbcUrl jdbc:hsqldb:file:hsqldb
    UserName sa
    Password
</Resource>

Derby (Embedded)

<Resource id="Derby Database" type="DataSource">
    #Embedded Derby example

    JdbcDriver org.apache.derby.jdbc.EmbeddedDriver
    JdbcUrl jdbc:derby:derbyDB;create=true
    UserName admin
    Password pass
</Resource>

MySQL

<Resource id="MySQL Database" type="DataSource">
    #  MySQL example
    #
    #  This connector will not work until you download the driver at:
    #  http://www.mysql.com/downloads/api-jdbc-stable.html

    JdbcDriver  com.mysql.jdbc.Driver
    JdbcUrl jdbc:mysql://localhost/test
    UserName    test
</Resource>

Oracle

<Resource id="Oracle Database" type="DataSource">
    #  Oracle example
    #
    #  This connector will not work until you download the driver at:
    #  http://otn.oracle.com/software/tech/java/sqlj_jdbc/content.html
    JdbcDriver  oracle.jdbc.OracleDriver
    JdbcUrl jdbc:oracle:thin:@localhost:1521:orcl
    UserName    scott
    Password    tiger
</Resource>

OracleXA

<Resource id="OracleXA Database" type="DataSource">
    #  OracleXA example
    #
    #  This connector will not work until you download the driver at:
    #  http://otn.oracle.com/software/tech/java/sqlj_jdbc/content.html
    JdbcDriver  oracle.jdbc.xa.client.OracleXADataSource
    JdbcUrl jdbc:oracle:thin:@localhost:1521:orcl
    UserName    scott
    Password    tiger
</Resource>

PosgreSQL

<Resource id="PostgreSQL Database" type="DataSource">
    #  PostgreSQL example
    #
    #  This connector will not work until you download the driver at:
    #  http://jdbc.postgresql.org/download.html
    JdbcDriver   org.postgresql.Driver
    JdbcUrl  jdbc:postgresql://localhost/test
    UserName     postgres
    Password     pass
</Resource>

InstantDB

<Resource id="InstantDB Database" type="DataSource">
    #  InstantDB example
    #
    JdbcDriver   org.enhydra.instantdb.jdbc.idbDriver
    JdbcUrl  jdbc:idb:conf/instantdb.properties
    UserName     Admin
    Password     pass
</Resource>

Internally, from TomEE 1.5.0, JDBC pools are managed via Tomcat-pool. You can still switch back to Apache Commons DBCP by adding the following property: DataSourceCreator dbcp. To get the full list of available configuration properties, have a look to Apache Commons DBCP configuration.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s