<!DOCTYPE html>
<html lang="en">

<head>
	<meta charset="UTF-8">
	<meta http-equiv="X-UA-Compatible" content="IE=edge">
	<meta name="viewport" content="width=device-width, initial-scale=1">
	<title>Apache TomEE</title>
	<meta name="description"
		  content="Apache TomEE is a lightweight, yet powerful, JavaEE Application server with feature rich tooling." />
	<meta name="keywords" content="tomee,asf,apache,javaee,jee,shade,embedded,test,junit,applicationcomposer,maven,arquillian" />
	<meta name="author" content="Luka Cvetinovic for Codrops" />
	<link rel="icon" href="../../favicon.ico">
	<link rel="icon"  type="image/png" href="../../favicon.png">
	<meta name="msapplication-TileColor" content="#80287a">
	<meta name="theme-color" content="#80287a">
	<link rel="stylesheet" type="text/css" href="../../css/normalize.css">
	<link rel="stylesheet" type="text/css" href="../../css/bootstrap.css">
	<link rel="stylesheet" type="text/css" href="../../css/owl.css">
	<link rel="stylesheet" type="text/css" href="../../css/animate.css">
	<link rel="stylesheet" type="text/css" href="../../fonts/font-awesome-4.1.0/css/font-awesome.min.css">
	<link rel="stylesheet" type="text/css" href="../../fonts/eleganticons/et-icons.css">
	<link rel="stylesheet" type="text/css" href="../../css/jqtree.css">
	<link rel="stylesheet" type="text/css" href="../../css/idea.css">
	<link rel="stylesheet" type="text/css" href="../../css/cardio.css">

	<script type="text/javascript">

      var _gaq = _gaq || [];
      _gaq.push(['_setAccount', 'UA-2717626-1']);
      _gaq.push(['_setDomainName', 'apache.org']);
      _gaq.push(['_trackPageview']);

      (function() {
        var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
        ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
        var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
      })();

    </script>
</head>

<body>
    <div class="preloader">
		<img src="../../img/loader.gif" alt="Preloader image">
	</div>
	    <nav class="navbar">
		<div class="container">
		  <div class="row">          <div class="col-md-12">

			<!-- Brand and toggle get grouped for better mobile display -->
			<div class="navbar-header">
				<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
					<span class="sr-only">Toggle navigation</span>
					<span class="icon-bar"></span>
					<span class="icon-bar"></span>
					<span class="icon-bar"></span>
				</button>
				<a class="navbar-brand" href="/">
				    <span>

				    
                        <img src="../../img/logo-active.png">
                    

                    </span>
				    Apache TomEE
                </a>
			</div>
			<!-- Collect the nav links, forms, and other content for toggling -->
			<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
				<ul class="nav navbar-nav navbar-right main-nav">
					<li><a href="../../docs.html">Documentation</a></li>
					<li><a href="../../community/index.html">Community</a></li>
					<li><a href="../../security/security.html">Security</a></li>
					<li><a href="../../download-ng.html">Downloads</a></li>
				</ul>
			</div>
			<!-- /.navbar-collapse -->
		   </div></div>
		</div>
		<!-- /.container-fluid -->
	</nav>


    <div id="main-block" class="container main-block">
        <div class="row title">
          <div class="col-md-12">
            <div class='page-header'>
              
              <h1>DataSource Configuration</h1>
            </div>
          </div>
        </div>
        <div class="row">
            
            <div class="col-md-12">
                <div id="preamble">
<div class="sectionbody">
<div class="paragraph">
<p>A DataSource can be declared via xml in the
<code>&lt;tomee-home&gt;/conf/tomee.xml</code> file or in a <code>WEB-INF/resources.xml</code> file
using a declaration like the following. All properties in the element
body are optional.</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="highlight"><code class="language-xml" data-lang="xml">&lt;Resource id="myDataSource" type="javax.sql.DataSource"&gt;
    accessToUnderlyingConnectionAllowed = false
    alternateUsernameAllowed = false
    connectionProperties =
    defaultAutoCommit = true
    defaultReadOnly =
    definition =
    ignoreDefaultValues = false
    initialSize = 0
    jdbcDriver = org.hsqldb.jdbcDriver
    jdbcUrl = jdbc:hsqldb:mem:hsqldb
    jtaManaged = true
    maxActive = 20
    maxIdle = 20
    maxOpenPreparedStatements = 0
    maxWaitTime = -1 millisecond
    minEvictableIdleTime = 30 minutes
    minIdle = 0
    numTestsPerEvictionRun = 3
    password =
    passwordCipher = PlainText
    poolPreparedStatements = false
    serviceId =
    testOnBorrow = true
    testOnReturn = false
    testWhileIdle = false
    timeBetweenEvictionRuns = -1 millisecond
    userName = sa
    validationQuery =
&lt;/Resource&gt;</code></pre>
</div>
</div>
<div class="paragraph">
<p>Alternatively, a DataSource can be declared via properties in the
<code>&lt;tomee-home&gt;/conf/system.properties</code> file or via Java VirtualMachine
<code>-D</code> properties. The properties can also be used when embedding TomEE
via the <code>jakarta.ejb.embeddable.EJBContainer</code> API or <code>InitialContext</code></p>
</div>
<div class="listingblock">
<div class="content">
<pre class="highlight"><code class="language-properties" data-lang="properties">myDataSource = new://Resource?type=javax.sql.DataSource
myDataSource.accessToUnderlyingConnectionAllowed = false
myDataSource.alternateUsernameAllowed = false
myDataSource.connectionProperties =
myDataSource.defaultAutoCommit = true
myDataSource.defaultReadOnly =
myDataSource.definition =
myDataSource.ignoreDefaultValues = false
myDataSource.initialSize = 0
myDataSource.jdbcDriver = org.hsqldb.jdbcDriver
myDataSource.jdbcUrl = jdbc:hsqldb:mem:hsqldb
myDataSource.jtaManaged = true
myDataSource.maxActive = 20
myDataSource.maxIdle = 20
myDataSource.maxOpenPreparedStatements = 0
myDataSource.maxWaitTime = -1 millisecond
myDataSource.minEvictableIdleTime = 30 minutes
myDataSource.minIdle = 0
myDataSource.numTestsPerEvictionRun = 3
myDataSource.password =
myDataSource.passwordCipher = PlainText
myDataSource.poolPreparedStatements = false
myDataSource.serviceId =
myDataSource.testOnBorrow = true
myDataSource.testOnReturn = false
myDataSource.testWhileIdle = false
myDataSource.timeBetweenEvictionRuns = -1 millisecond
myDataSource.userName = sa
myDataSource.validationQuery =</code></pre>
</div>
</div>
<div class="paragraph">
<p>Properties and xml can be mixed. Properties will override the xml
allowing for easy configuration change without the need for $\{} style
variable substitution. Properties are not case sensitive. If a property
is specified that is not supported by the declared DataSource a warning
will be logged. If a DataSource is needed by the application and one is
not declared, TomEE will create one dynamically using default settings.
Multiple DataSource declarations are allowed.</p>
</div>
<div class="paragraph">
<p>See the <a href="common-datasource-configurations.html">Common DataSource
Configurations</a> page for examples of configuring datasources for Derby,
MySQL, Oracle and other common databases.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_supported_properties">Supported Properties</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Property</p>
</div>
<div class="paragraph">
<p>Type</p>
</div>
<div class="paragraph">
<p>Default</p>
</div>
<div class="paragraph">
<p>Description</p>
</div>
<div class="paragraph">
<p>accessToUnderlyingConnectionAllowed</p>
</div>
<div class="paragraph">
<p>boolean</p>
</div>
<div class="paragraph">
<p>false</p>
</div>
<div class="paragraph">
<p>If true the raw physical connection to the database can be accessed</p>
</div>
<div class="paragraph">
<p>alternateUsernameAllowed</p>
</div>
<div class="paragraph">
<p>boolean</p>
</div>
<div class="paragraph">
<p>false</p>
</div>
<div class="paragraph">
<p>If true allow an alternate username and password to be specified on the
connection, rather than those specified in the DataSource definition..</p>
</div>
<div class="paragraph">
<p>connectionProperties</p>
</div>
<div class="paragraph">
<p>String</p>
</div>
<div class="paragraph">
<p>The connection properties that will be sent to the JDBC driver when
establishing new connections</p>
</div>
<div class="paragraph">
<p>defaultAutoCommit</p>
</div>
<div class="paragraph">
<p>boolean</p>
</div>
<div class="paragraph">
<p>true</p>
</div>
<div class="paragraph">
<p>The default auto-commit state of new connections</p>
</div>
<div class="paragraph">
<p>defaultReadOnly</p>
</div>
<div class="paragraph">
<p>String</p>
</div>
<div class="paragraph">
<p>The default read-only state of new connections If not set then the
setReadOnly method will not be called. (Some drivers don&#8217;t support read
only mode, ex: Informix)</p>
</div>
<div class="paragraph">
<p>definition</p>
</div>
<div class="paragraph">
<p>String</p>
</div>
<div class="paragraph">
<p>ignoreDefaultValues</p>
</div>
<div class="paragraph">
<p>boolean</p>
</div>
<div class="paragraph">
<p>false</p>
</div>
<div class="paragraph">
<p>use only all set values in this config will need a lot of properties but
allow to not set some values</p>
</div>
<div class="paragraph">
<p>initialSize</p>
</div>
<div class="paragraph">
<p>int</p>
</div>
<div class="paragraph">
<p>0</p>
</div>
<div class="paragraph">
<p>The size to reach when creating the datasource.</p>
</div>
<div class="paragraph">
<p>jdbcDriver</p>
</div>
<div class="paragraph">
<p>String</p>
</div>
<div class="paragraph">
<p>org.hsqldb.jdbcDriver</p>
</div>
<div class="paragraph">
<p>Driver class name</p>
</div>
<div class="paragraph">
<p>jdbcUrl</p>
</div>
<div class="paragraph">
<p>java.net.URI</p>
</div>
<div class="paragraph">
<p>jdbc:hsqldb:mem:hsqldb</p>
</div>
<div class="paragraph">
<p>Url for creating connections</p>
</div>
<div class="paragraph">
<p>jtaManaged</p>
</div>
<div class="paragraph">
<p>boolean</p>
</div>
<div class="paragraph">
<p>true</p>
</div>
<div class="paragraph">
<p>Determines wether or not this data source should be JTA managed or user
managed.</p>
</div>
<div class="paragraph">
<p>maxActive</p>
</div>
<div class="paragraph">
<p>int</p>
</div>
<div class="paragraph">
<p>20</p>
</div>
<div class="paragraph">
<p>The maximum number of active connections that can be allocated from this
pool at the same time, or a negative number for no limit. N.B. When
using dbcp2 with TomEE 7 ("DataSourceCreator dbcp"), "MaxTotal" should
be used as opposed to "MaxActive".</p>
</div>
<div class="paragraph">
<p>maxIdle</p>
</div>
<div class="paragraph">
<p>int</p>
</div>
<div class="paragraph">
<p>20</p>
</div>
<div class="paragraph">
<p>The maximum number of connections that can remain idle in the pool,
without extra ones being released, or a negative number for no limit.</p>
</div>
<div class="paragraph">
<p>maxOpenPreparedStatements</p>
</div>
<div class="paragraph">
<p>int</p>
</div>
<div class="paragraph">
<p>0</p>
</div>
<div class="paragraph">
<p>The maximum number of open statements that can be allocated from the
statement pool at the same time, or zero for no limit.</p>
</div>
<div class="paragraph">
<p>maxWaitTime</p>
</div>
<div class="paragraph">
<p>time</p>
</div>
<div class="paragraph">
<p>-1 millisecond</p>
</div>
<div class="paragraph">
<p>The maximum number of time that the pool will wait (when there are no
available connections) for a connection to be returned before throwing
an exception, or -1 to wait indefinitely.</p>
</div>
<div class="paragraph">
<p>minEvictableIdleTime</p>
</div>
<div class="paragraph">
<p>time</p>
</div>
<div class="paragraph">
<p>30 minutes</p>
</div>
<div class="paragraph">
<p>The minimum amount of time a connection may sit idle in the pool before
it is eligable for eviction by the idle connection evictor (if any).</p>
</div>
<div class="paragraph">
<p>minIdle</p>
</div>
<div class="paragraph">
<p>int</p>
</div>
<div class="paragraph">
<p>0</p>
</div>
<div class="paragraph">
<p>The minimum number of connections that can remain idle in the pool,
without extra ones being created, or zero to create none.</p>
</div>
<div class="paragraph">
<p>numTestsPerEvictionRun</p>
</div>
<div class="paragraph">
<p>int</p>
</div>
<div class="paragraph">
<p>3</p>
</div>
<div class="paragraph">
<p>The number of connectionss to examine during each run of the idle
connection evictor thread (if any).</p>
</div>
<div class="paragraph">
<p>password</p>
</div>
<div class="paragraph">
<p>String</p>
</div>
<div class="paragraph">
<p>Default password</p>
</div>
<div class="paragraph">
<p>passwordCipher</p>
</div>
<div class="paragraph">
<p>String</p>
</div>
<div class="paragraph">
<p>PlainText</p>
</div>
<div class="paragraph">
<p>poolPreparedStatements</p>
</div>
<div class="paragraph">
<p>boolean</p>
</div>
<div class="paragraph">
<p>false</p>
</div>
<div class="paragraph">
<p>If true, a statement pool is created for each Connection and
PreparedStatements created by one of the following methods are pooled:</p>
</div>
<div class="paragraph">
<p>serviceId</p>
</div>
<div class="paragraph">
<p>String</p>
</div>
<div class="paragraph">
<p>testOnBorrow</p>
</div>
<div class="paragraph">
<p>boolean</p>
</div>
<div class="paragraph">
<p>true</p>
</div>
<div class="paragraph">
<p>If true connections will be validated before being returned from the
pool. If the validation fails, the connection is destroyed, and a new
conection will be retrieved from the pool (and validated).</p>
</div>
<div class="paragraph">
<p>testOnReturn</p>
</div>
<div class="paragraph">
<p>boolean</p>
</div>
<div class="paragraph">
<p>false</p>
</div>
<div class="paragraph">
<p>If true connections will be validated before being returned to the pool.
If the validation fails, the connection is destroyed instead of being
returned to the pool.</p>
</div>
<div class="paragraph">
<p>testWhileIdle</p>
</div>
<div class="paragraph">
<p>boolean</p>
</div>
<div class="paragraph">
<p>false</p>
</div>
<div class="paragraph">
<p>If true connections will be validated by the idle connection evictor (if
any). If the validation fails, the connection is destroyed and removed
from the pool</p>
</div>
<div class="paragraph">
<p>timeBetweenEvictionRuns</p>
</div>
<div class="paragraph">
<p>time</p>
</div>
<div class="paragraph">
<p>-1 millisecond</p>
</div>
<div class="paragraph">
<p>The number of milliseconds to sleep between runs of the idle connection
evictor thread. When set to a negative number, no idle connection
evictor thread will be run.</p>
</div>
<div class="paragraph">
<p>userName</p>
</div>
<div class="paragraph">
<p>String</p>
</div>
<div class="paragraph">
<p>sa</p>
</div>
<div class="paragraph">
<p>Default user name</p>
</div>
<div class="paragraph">
<p>validationQuery</p>
</div>
<div class="paragraph">
<p>String</p>
</div>
<div class="paragraph">
<p>The SQL query that will be used to validate connections from this pool
before returning them to the caller. If specified, this query MUST be an
SQL SELECT statement that returns at least one row.</p>
</div>
<div class="paragraph">
<p>LogSql</p>
</div>
<div class="paragraph">
<p>boolean</p>
</div>
<div class="paragraph">
<p>false</p>
</div>
<div class="paragraph">
<p>Wether SQL queries should be logged or not</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_accesstounderlyingconnectionallowed">accessToUnderlyingConnectionAllowed</h2>
<div class="sectionbody">
<div class="paragraph">
<p>If true the raw physical connection to the database can be accessed
using the following construct:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="highlight"><code class="language-java" data-lang="java">Connection conn = ds.getConnection();
Connection rawConn = ((DelegatingConnection) conn).getInnermostDelegate();
...
conn.close()</code></pre>
</div>
</div>
<div class="paragraph">
<p>Default is false, because misbehaving programs can do harmfull things to
the raw connection shuch as closing the raw connection or continuing to
use the raw connection after it has been assigned to another logical
connection. Be careful and only use when you need direct access to
driver specific extensions.</p>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
Do NOT close the underlying connection, only the original logical
connection wrapper.
</td>
</tr>
</table>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_connectionproperties">connectionProperties</h2>
<div class="sectionbody">
<div class="paragraph">
<p>The connection properties that will be sent to the JDBC driver when
establishing new connections</p>
</div>
<div class="paragraph">
<p>Format of the string must be [propertyName=property;]*</p>
</div>
<div class="paragraph">
<p>NOTE - The "user" and "password" properties will be passed explicitly,
so they do not need to be included here.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_transactionisolation">TransactionIsolation</h2>
<div class="sectionbody">
<div class="paragraph">
<p>The default TransactionIsolation state of new connections.</p>
</div>
<div class="paragraph">
<p>If not set then the <code>setTransactionIsolation</code> method will not be called.
The allowed values for this property are:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><code>NONE</code></p>
</li>
<li>
<p><code>READ_COMMITTED</code></p>
</li>
<li>
<p><code>READ_UNCOMMITTED</code></p>
</li>
<li>
<p><code>REPEATABLE_READ</code></p>
</li>
<li>
<p><code>SERIALIZABLE</code></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Note: Most JDBC drivers do not support all isolation levels
DefaultTransactionIsolation</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_initialsize">initialSize</h2>
<div class="sectionbody">
<div class="paragraph">
<p>The initial size to initialize the pool of connections.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_jtamanaged">jtaManaged</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Determines wether or not this data source should be JTA managed or user
managed.</p>
</div>
<div class="paragraph">
<p>If set to 'true' it will automatically be enrolled in any ongoing
transactions. Calling begin/commit/rollback or setAutoCommit on the
datasource or connection will not be allowed. If you need to perform
these functions yourself, set <code>JtaManaged</code> to <code>false</code></p>
</div>
<div class="paragraph">
<p>In terms of JPA persistence.xml:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><code>JtaManaged=true</code> can be used as a 'jta-data-source'</p>
</li>
<li>
<p><code>JtaManaged=false</code> can be used as a 'non-jta-data-source'</p>
</li>
</ul>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_maxopenpreparedstatements">maxOpenPreparedStatements</h2>
<div class="sectionbody">
<div class="paragraph">
<p>The maximum number of open statements that can be allocated from the
statement pool at the same time, or zero for no limit.</p>
</div>
<div class="paragraph">
<p>NOTE - Some drivers have limits on the number of open statements, so
make sure there are some resources left for the other (non-prepared)
statements.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_poolpreparedstatements">poolPreparedStatements</h2>
<div class="sectionbody">
<div class="paragraph">
<p>If true, a statement pool is created for each Connection and
PreparedStatements created by one of the following methods are pooled:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="highlight"><code class="language-java" data-lang="java">public PreparedStatement prepareStatement(String sql);
public PreparedStatement prepareStatement(String sql, int resultSetType, int resultSetConcurrency)</code></pre>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_testonborrow">testOnBorrow</h2>
<div class="sectionbody">
<div class="paragraph">
<p>If true connections will be validated before being returned from the
pool. If the validation fails, the connection is destroyed, and a new
conection will be retrieved from the pool (and validated).</p>
</div>
<div class="paragraph">
<p>NOTE - for a true value to have any effect, the ValidationQuery
parameter must be set.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_testonreturn">testOnReturn</h2>
<div class="sectionbody">
<div class="paragraph">
<p>If true connections will be validated before being returned to the pool.
If the validation fails, the connection is destroyed instead of being
returned to the pool.</p>
</div>
<div class="paragraph">
<p>NOTE - for a true value to have any effect, the ValidationQuery
parameter must be set.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_testwhileidle">testWhileIdle</h2>
<div class="sectionbody">
<div class="paragraph">
<p>If true connections will be validated by the idle connection evictor (if
any). If the validation fails, the connection is destroyed and removed
from the pool</p>
</div>
<div class="paragraph">
<p>NOTE - for a true value to have any effect, the
timeBetweenEvictionRunsMillis property must be a positive number and the
ValidationQuery parameter must be set.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_xadatasource">XADataSource</h2>
<div class="sectionbody">
<div class="paragraph">
<p>There are several ways to configure a XADataSource. Depending the
underlying datasource (Oracle, MySQL one or the other solution can be
more adapted.</p>
</div>
<div class="paragraph">
<p>This part deals with <code>JtaManaged</code> XaDataSource since a not managed
XaDataSource can be defined as a standard resource using <code>class-name</code>.</p>
</div>
<div class="sect2">
<h3 id="_single_definition">Single definition</h3>
<div class="paragraph">
<p>First solution is to define as <code>JdbcDriver</code> an XADataSource:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="highlight"><code class="language-xml" data-lang="xml">&lt;Resource id="myXaDs" type="DataSource"&gt;
    JdbcDriver = org.foo.MyXaDataSource

    myXaProperty = value

    myPoolProperty = 10
&lt;/Resource&gt;</code></pre>
</div>
</div>
<div class="paragraph">
<p>This solution merges properties for the XaDataSource and the pool
(tomcat-jdbc for TomEE, dbcp for OpenEJB by default but still
configurable with DataSourceCreator).</p>
</div>
<div class="paragraph">
<p>Note: in this case for Oracle for instance you&#8217;ll define UserName for
the pool and User for the datasource which can look weird if you don&#8217;t
know properties are used for 2 instances (pool and datasource).</p>
</div>
<div class="paragraph">
<p>Note: this solution uses the same logic than <code>@DataSourceDefinition</code>
factory mecanism.</p>
</div>
</div>
<div class="sect2">
<h3 id="_two_resources_definition">Two resources definition</h3>
<div class="paragraph">
<p>An alternative is to define a resource for the XaDataSource:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="highlight"><code class="language-xml" data-lang="xml">&lt;Resource id="myXa" class-name="org.foo.MyXaDataSource"&gt;
    myXaProperty = value
&lt;/Resource&gt;</code></pre>
</div>
</div>
<div class="paragraph">
<p>And then wrap it in the pool:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="highlight"><code class="language-xml" data-lang="xml">&lt;Resource id="myXaDs" type="DataSource"&gt;
    DataSourceCreator = [dbcp|dbcp-alternative]
    myPoolProperty = 10
&lt;/Resource&gt;</code></pre>
</div>
</div>
<div class="paragraph">
<p>Note: <code>dbcp</code> is more adapted than <code>dbcp-alternative</code> in most of the case
because it is reusing direct dbcp JTA management.</p>
</div>
</div>
<div class="sect2">
<h3 id="_known_issues">Known issues</h3>
<div class="paragraph">
<p>For TomEE 1.7.0/1.7.1 you can need to add the property:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="highlight"><code class="language-properties" data-lang="properties"> openejb.datasource.pool = true</code></pre>
</div>
</div>
<div class="paragraph">
<p>in resource properties to ensure the resource is pooled.</p>
</div>
</div>
<div class="sect2">
<h3 id="_details_about_datasource_and_their_factories_advanced_configuration">Details about DataSource and their factories (advanced configuration)</h3>
<div class="paragraph">
<p><a href="datasource-configuration-by-creator.html">Configuration by creator</a></p>
</div>
</div>
</div>
</div>
            </div>
            
        </div>
    </div>
<footer>
		<div class="container">
			<div class="row">
				<div class="col-sm-6 text-center-mobile">
					<h3 class="white">Be simple.  Be certified. Be Tomcat.</h3>
					<h5 class="light regular light-white">"A good application in a good server"</h5>
					<ul class="social-footer">
						<li><a href="https://www.facebook.com/ApacheTomEE/"><i class="fa fa-facebook"></i></a></li>
						<li><a href="https://twitter.com/apachetomee"><i class="fa fa-twitter"></i></a></li>
						<li><a href="https://plus.google.com/communities/105208241852045684449"><i class="fa fa-google-plus"></i></a></li>
					</ul>
				</div>
				<div class="col-sm-6 text-center-mobile">
					<div class="row opening-hours">
						<div class="col-sm-3 text-center-mobile">
							<h5><a href="../../latest/docs/" class="white">Documentation</a></h5>
							<ul class="list-unstyled">
								<li><a href="../../latest/docs/admin/configuration/index.html" class="regular light-white">How to configure</a></li>
								<li><a href="../../latest/docs/admin/file-layout.html" class="regular light-white">Dir. Structure</a></li>
								<li><a href="../../latest/docs/developer/testing/index.html" class="regular light-white">Testing</a></li>
								<li><a href="../../latest/docs/admin/cluster/index.html" class="regular light-white">Clustering</a></li>
							</ul>
						</div>
						<div class="col-sm-3 text-center-mobile">
							<h5><a href="../../latest/examples/" class="white">Examples</a></h5>
							<ul class="list-unstyled">
								<li><a href="../../latest/examples/simple-cdi-interceptor.html" class="regular light-white">CDI Interceptor</a></li>
								<li><a href="../../latest/examples/rest-cdi.html" class="regular light-white">REST with CDI</a></li>
								<li><a href="../../latest/examples/ejb-examples.html" class="regular light-white">EJB</a></li>
								<li><a href="../../latest/examples/jsf-managedBean-and-ejb.html" class="regular light-white">JSF</a></li>
							</ul>
						</div>
						<div class="col-sm-3 text-center-mobile">
							<h5><a href="../../community/index.html" class="white">Community</a></h5>
							<ul class="list-unstyled">
								<li><a href="../../community/contributors.html" class="regular light-white">Contributors</a></li>
								<li><a href="../../community/social.html" class="regular light-white">Social</a></li>
								<li><a href="../../community/sources.html" class="regular light-white">Sources</a></li>
							</ul>
						</div>
						<div class="col-sm-3 text-center-mobile">
							<h5><a href="../../security/index.html" class="white">Security</a></h5>
							<ul class="list-unstyled">
								<li><a href="http://apache.org/security" target="_blank" class="regular light-white">Apache Security</a></li>
								<li><a href="http://apache.org/security/projects.html" target="_blank" class="regular light-white">Security Projects</a></li>
								<li><a href="http://cve.mitre.org" target="_blank" class="regular light-white">CVE</a></li>
							</ul>
						</div>
					</div>
				</div>
			</div>
			<div class="row bottom-footer text-center-mobile">
				<div class="col-sm-12 light-white">
					<p>Copyright &copy; 1999-2016 The Apache Software Foundation, Licensed under the Apache License, Version 2.0. Apache TomEE, TomEE, Apache, the Apache feather logo, and the Apache TomEE project logo are trademarks of The Apache Software Foundation. All other marks mentioned may be trademarks or registered trademarks of their respective owners.</p>
				</div>
			</div>
		</div>
	</footer>
	<!-- Holder for mobile navigation -->
	<div class="mobile-nav">
        <ul>
          <li><a hef="../../latest/docs/admin/index.html">Administrators</a>
          <li><a hef="../../latest/docs/developer/index.html">Developers</a>
          <li><a hef="../../latest/docs/advanced/index.html">Advanced</a>
          <li><a hef="../../community/index.html">Community</a>
        </ul>
		<a href="#" class="close-link"><i class="arrow_up"></i></a>
	</div>
	<!-- Scripts -->
	<script src="../../js/jquery-1.11.1.min.js"></script>
	<script src="../../js/owl.carousel.min.js"></script>
	<script src="../../js/bootstrap.min.js"></script>
	<script src="../../js/wow.min.js"></script>
	<script src="../../js/typewriter.js"></script>
	<script src="../../js/jquery.onepagenav.js"></script>
	<script src="../../js/tree.jquery.js"></script>
	<script src="../../js/highlight.pack.js"></script>
    <script src="../../js/main.js"></script>
		</body>

</html>

