1075 lines
42 KiB
XML
1075 lines
42 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!--
|
|
~ Copyright The WildFly Authors
|
|
~ SPDX-License-Identifier: Apache-2.0
|
|
-->
|
|
|
|
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
|
targetNamespace="urn:jboss:domain:datasources:4.0" xmlns="urn:jboss:domain:datasources:4.0"
|
|
elementFormDefault="qualified" attributeFormDefault="unqualified">
|
|
|
|
<xs:element name="subsystem" type="subsystemType"/>
|
|
|
|
<xs:complexType name="subsystemType">
|
|
<xs:all>
|
|
<xs:element name="datasources" type="datasourcesType" minOccurs="1" maxOccurs="1"/>
|
|
</xs:all>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="datasourcesType">
|
|
<xs:sequence>
|
|
<xs:choice minOccurs="0" maxOccurs="unbounded">
|
|
<xs:element name="datasource" type="datasourceType">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies a non-XA datasource, using local transactions
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="xa-datasource" type="xa-datasourceType">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies a XA datasource
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
</xs:choice>
|
|
<xs:element name="drivers" type="driversType" maxOccurs="1" minOccurs="0"></xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
<xs:complexType name="datasourceType" mixed="false">
|
|
<xs:sequence>
|
|
<xs:element name="connection-url" type="xs:token">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
The JDBC driver connection URL Ex: <connection-url>jdbc:hsqldb:hsql://localhost:1701</connection-url>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="driver-class" type="xs:token" maxOccurs="1" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
The fully qualifed name of the JDBC driver class Ex: <driver-class>org.hsqldb.jdbcDriver</driver-class>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="datasource-class" type="xs:token" maxOccurs="1" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
The fully qualifed name of the JDBC datasource class Ex: <datasource-class>org.h2.jdbcx.JdbcDataSource</datasource-class>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="driver" type="xs:token" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
An unique reference to the classloader module which contains the JDBC driver
|
|
The accepted format is driverName#majorVersion.minorVersion
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="connection-property" type="connection-propertyType" minOccurs="0" maxOccurs="unbounded">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
The connection-property element allows you to pass in arbitrary connection
|
|
properties to the Driver.connect(url, props) method. Each connection-property
|
|
specifies a string name/value pair with the property name coming from the
|
|
name attribute and the value coming from the element content. Ex:
|
|
<connection-property name="char.encoding">UTF-8</connection-property>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="new-connection-sql" type="xs:string" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specify an SQL statement to execute whenever a connection is added
|
|
to the connection pool.
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="transaction-isolation" type="transaction-isolationType" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Set java.sql.Connection transaction isolation level to use. The constants
|
|
defined by transaction-isolation-values are the possible transaction isolation
|
|
levels and include: TRANSACTION_READ_UNCOMMITTED TRANSACTION_READ_COMMITTED
|
|
TRANSACTION_REPEATABLE_READ TRANSACTION_SERIALIZABLE TRANSACTION_NONE
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="url-delimiter" type="xs:token" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies the delimeter for URLs in connection-url for HA datasources
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="url-property" type="xs:token" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies the property for the URL property in the xa-datasource-property values
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="url-selector-strategy-class-name" type="xs:token" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
A class that implements org.jboss.jca.adapters.jdbc.URLSelectorStrategy
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="pool" type="poolType" minOccurs="0" maxOccurs="1">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies the pooling settings
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="security" type="dsSecurityType" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies the security settings
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="validation" type="validationType" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies the validation settings
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="timeout" type="timeoutType" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies the time out settings
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="statement" type="statementType" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies the statement settings
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
</xs:sequence>
|
|
<xs:attribute name="jta" type="xs:boolean" default="true" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Enable JTA integration
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attributeGroup ref="common-datasourceAttributes" />
|
|
</xs:complexType>
|
|
<xs:complexType name="xa-datasourceType">
|
|
<xs:sequence>
|
|
<xs:element name="xa-datasource-property" type="xa-datasource-propertyType" minOccurs="1" maxOccurs="unbounded">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies a property to assign to the XADataSource implementation class.
|
|
Each property is identified by the name attribute and the property value
|
|
is given by the xa-datasource-property element content. The property is mapped
|
|
onto the XADataSource implementation by looking for a JavaBeans style getter
|
|
method for the property name. If found, the value of the property is set
|
|
using the JavaBeans setter with the element text translated to the true property
|
|
type using the java.beans.PropertyEditor for the type. Ex:
|
|
<xa-datasource-property name="IfxWAITTIME">10</xa-datasource-property>
|
|
<xa-datasource-property name="IfxIFXHOST">myhost.mydomain.com</xa-datasource-property>
|
|
<xa-datasource-property name="PortNumber">1557</xa-datasource-property>
|
|
<xa-datasource-property name="DatabaseName">mydb</xa-datasource-property>
|
|
<xa-datasource-property name="ServerName">myserver</xa-datasource-property>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="xa-datasource-class" type="xs:token" maxOccurs="1" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
The fully qualifed name of the javax.sql.XADataSource implementation
|
|
class. Ex: <xa-datasource-class>oracle.jdbc.xa.client.OracleXADataSource</xa-datasource-class>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="driver" type="xs:token" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
An unique reference to the classloader module which contains the JDBC driver
|
|
The accepted format is driverName#majorVersion.minorVersion
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="url-delimiter" type="xs:token" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies the delimeter for URLs in the connection url for HA datasources
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="url-selector-strategy-class-name" type="xs:token" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
A class that implements org.jboss.jca.adapters.jdbc.URLSelectorStrategy
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="new-connection-sql" type="xs:string" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies an SQL statement to execute whenever a connection is added
|
|
to the connection pool.
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="transaction-isolation" type="transaction-isolationType" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Set java.sql.Connection transaction isolation level to use. The constants
|
|
defined by transaction-isolation-values are the possible transaction isolation
|
|
levels and include: TRANSACTION_READ_UNCOMMITTED TRANSACTION_READ_COMMITTED
|
|
TRANSACTION_REPEATABLE_READ TRANSACTION_SERIALIZABLE TRANSACTION_NONE
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="xa-pool" type="xa-poolType" minOccurs="0" maxOccurs="1">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies the pooling settings
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="security" type="dsSecurityType" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies the security settings
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="validation" type="validationType" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies the validation settings
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="timeout" type="timeoutType" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies the time out settings
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="statement" type="statementType" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies the statement settings
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="recovery" type="recoverType" minOccurs="0" maxOccurs="1"></xs:element>
|
|
</xs:sequence>
|
|
<xs:attributeGroup ref="common-datasourceAttributes" />
|
|
</xs:complexType>
|
|
<xs:complexType name="boolean-presenceType" />
|
|
<xs:attributeGroup name="common-datasourceAttributes">
|
|
<xs:attribute name="jndi-name" type="xs:token" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies the JNDI name for the datasource
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="pool-name" type="xs:token" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies the pool name for the datasource used for management
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="enabled" type="xs:boolean" default="true" form="unqualified" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies if the datasource should be enabled
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute default="true" name="use-java-context" type="xs:boolean">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Setting this to false will bind the DataSource into global JNDI
|
|
Ex: use-java-context="true"
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute default="false" name="spy" type="xs:boolean">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Enable spy functionality on the JDBC layer - e.g. log all JDBC traffic to the datasource.
|
|
Remember to enable the logging category (org.jboss.jdbc) too.
|
|
Ex: spy="true"
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute default="true" name="use-ccm" type="xs:boolean">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Enable the use of a cached connection manager
|
|
Ex: use-ccm="true"
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute default="false" name="connectable" type="xs:boolean">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Enable cmr functionality on this datsource's connections
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="tracking" type="xs:boolean" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Defines if IronJacamar should track connection handles across transaction boundaries
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute default="false" name="statistics-enabled" type="xs:boolean">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Enable statistics for this datasource
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="mcp" type="xs:token" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Defines the ManagedConnectionPool implementation, f.ex. org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="enlistment-trace" type="xs:boolean" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Defines if WildFly/IronJacamar should record enlistment traces
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:attributeGroup>
|
|
<xs:simpleType name="transaction-isolationType">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Define constants used as the possible transaction isolation levels in transaction-isolation
|
|
type. Include: TRANSACTION_READ_UNCOMMITTED, TRANSACTION_READ_COMMITTED, TRANSACTION_REPEATABLE_READ,
|
|
TRANSACTION_SERIALIZABLE, TRANSACTION_NONE
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:restriction base="xs:token">
|
|
<xs:enumeration value="TRANSACTION_READ_UNCOMMITTED" />
|
|
<xs:enumeration value="TRANSACTION_READ_COMMITTED" />
|
|
<xs:enumeration value="TRANSACTION_REPEATABLE_READ" />
|
|
<xs:enumeration value="TRANSACTION_SERIALIZABLE" />
|
|
<xs:enumeration value="TRANSACTION_NONE" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
<xs:complexType name="xa-datasource-propertyType" mixed="true">
|
|
<xs:attribute name="name" use="required" type="xs:token" />
|
|
</xs:complexType>
|
|
<xs:complexType name="connection-propertyType" mixed="true">
|
|
<xs:attribute name="name" use="required" type="xs:token" />
|
|
</xs:complexType>
|
|
<xs:complexType name="validationType">
|
|
<xs:sequence>
|
|
<xs:element name="valid-connection-checker" type="extensionType" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
An org.jboss.jca.adapters.jdbc.ValidConnectionChecker that provides
|
|
a SQLException isValidConnection(Connection e) method to validate is a connection
|
|
is valid. An exception means the connection is destroyed. This overrides
|
|
the check-valid-connection-sql when present. Ex:
|
|
<valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.vendor.OracleValidConnectionChecker"/>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
|
|
<xs:element name="check-valid-connection-sql" type="xs:string" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specify an SQL statement to check validity of a pool connection. This
|
|
may be called when managed connection is taken from pool for use.
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="validate-on-match" type="xs:boolean" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
The validate-on-match element indicates whether or not connection
|
|
level validation should be done when a connection factory attempts to match
|
|
a managed connection for a given set. This is typically exclusive to the
|
|
use of background validation
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="background-validation" type="xs:boolean" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
An element to specify that connections should be validated on a background
|
|
thread versus being validated prior to use
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="background-validation-millis" type="xs:nonNegativeInteger" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
The background-validation-millis element specifies the amount of
|
|
time, in millis, that background validation will run.
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="use-fast-fail" type="xs:boolean" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Whether fail a connection allocation on the first connection if it
|
|
is invalid (true) or keep trying until the pool is exhausted of all potential
|
|
connections (false) default false. e.g. <use-fast-fail>true</use-fast-fail>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element minOccurs="0" name="stale-connection-checker" type="extensionType">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
An org.jboss.jca.adapters.jdbc.StaleConnectionChecker that provides
|
|
a boolean isStaleConnection(SQLException e) method which if it it returns
|
|
true will wrap the exception in an org.jboss.jca.adapters.jdbc.StaleConnectionException
|
|
which is a subclass of SQLException. Ex:
|
|
<stale-connection-checker class-name="org.jboss.jca.adapters.jdbc.vendor.OracleStaleConnectionChecker"/>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="exception-sorter" type="extensionType" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
An org.jboss.jca.adapters.jdbc.ExceptionSorter that provides a
|
|
boolean isExceptionFatal(SQLException e) method to validate is an exception
|
|
should be broadcast to all javax.resource.spi.ConnectionEventListener as
|
|
a connectionErrorOccurred message. Ex:
|
|
<exception-sorter class-name="org.jboss.jca.adapters.jdbc.vendor.OracleExceptionSorter"/>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
<xs:complexType name="timeoutType">
|
|
<xs:sequence>
|
|
<xs:element name="blocking-timeout-millis" type="xs:nonNegativeInteger" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
The blocking-timeout-millis element indicates the maximum time in
|
|
milliseconds to block while waiting for a connection before throwing an exception.
|
|
Note that this blocks only while waiting for a permit for a connection, and
|
|
will never throw an exception if creating a new connection takes an inordinately
|
|
long time. The default is 30000 (30 seconds).
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="idle-timeout-minutes" type="xs:nonNegativeInteger" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
The idle-timeout-minutes elements indicates the maximum time in minutes
|
|
a connection may be idle before being closed. The actual maximum time depends
|
|
also on the IdleRemover scan time, which is 1/2 the smallest idle-timeout-minutes
|
|
of any pool.
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="set-tx-query-timeout" type="boolean-presenceType" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Whether to set the query timeout based on the time remaining until
|
|
transaction timeout, any configured query timeout will be used if there is
|
|
no transaction. The default is false. e.g. <set-tx-query-timeout/>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="query-timeout" type="xs:nonNegativeInteger" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Any configured query timeout in seconds The default is no timeout
|
|
e.g. 5 minutes <query-timeout>300</query-timeout>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="use-try-lock" type="xs:nonNegativeInteger" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Any configured timeout for internal locks on the resource adapter
|
|
objects in seconds The default is a 60 second timeout e.g. 5 minutes <use-try-lock>300</use-try-lock>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="allocation-retry" type="xs:nonNegativeInteger" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
The allocation retry element indicates the number of times that allocating
|
|
a connection should be tried before throwing an exception. The default is 0.
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="allocation-retry-wait-millis" type="xs:nonNegativeInteger" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
The allocation retry wait millis element indicates the time in milliseconds
|
|
to wait between retrying to allocate a connection. The default is 5000 (5 seconds).
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="xa-resource-timeout" type="xs:token" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Passed to XAResource.setTransactionTimeout() Default is zero which
|
|
does not invoke the setter. In seconds e.g. 5 minutes <xa-resource-timeout>300</xa-resource-timeout>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
<xs:simpleType name="track-statementsType">
|
|
<xs:restriction base="xs:token">
|
|
<xs:enumeration value="true" />
|
|
<xs:enumeration value="false" />
|
|
<xs:enumeration value="nowarn" />
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
<xs:complexType name="statementType">
|
|
<xs:sequence>
|
|
<xs:element name="track-statements" type="track-statementsType" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Whether to check for unclosed statements when a connection is returned
|
|
to the pool and result sets are closed when a statement is closed/return
|
|
to the prepared statement cache. valid values are: false - do not track statements
|
|
and results true - track statements and result sets and warn when they are
|
|
not closed nowarn - track statements but do no warn about them being unclosed
|
|
(the default) e.g. <track-statements>nowarn</track-statements>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="prepared-statement-cache-size" type="xs:nonNegativeInteger" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
The number of prepared statements per connection in an LRU cache
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="share-prepared-statements" type="boolean-presenceType" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Whether to share prepare statements, i.e. whether asking for same
|
|
statement twice without closing uses the same underlying prepared statement.
|
|
The default is false. e.g. <share-prepared-statements/>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
<xs:complexType name="poolType">
|
|
<xs:sequence>
|
|
<xs:element name="min-pool-size" type="xs:nonNegativeInteger" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
The min-pool-size element indicates the minimum number of connections
|
|
a pool should hold. These are not created until a Subject is known from a
|
|
request for a connection. This default to 0. Ex: <min-pool-size>1</min-pool-size>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="initial-pool-size" type="xs:nonNegativeInteger" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
The initial-pool-size element indicates the initial number of connections
|
|
a pool should hold. This default to 0. Ex: <initial-pool-size>1</initial-pool-size>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="max-pool-size" type="xs:nonNegativeInteger" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
The max-pool-size element indicates the maximum number of connections
|
|
for a pool. No more connections will be created in each sub-pool.
|
|
This defaults to 20.
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="prefill" type="xs:boolean" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Whether to attempt to prefill the connection pool. Empty element denotes
|
|
a true value. e.g. <prefill>true</prefill>.
|
|
Default is false
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="fair" type="xs:boolean" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Defines if pool use should be fair
|
|
Default true
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="use-strict-min" type="xs:boolean" minOccurs="0" maxOccurs="1">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Define if the min-pool-size should be considered a strictly.
|
|
Default false
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="flush-strategy" type="xs:token" minOccurs="0" maxOccurs="1">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies how the pool should be flush in case of an error.
|
|
Valid values are: FailingConnectionOnly (default), InvalidIdleConnections, IdleConnections, Gracefully, EntirePool,
|
|
AllInvalidIdleConnections, AllIdleConnections, AllGracefully, AllConnections
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="allow-multiple-users" type="boolean-presenceType" minOccurs="0" maxOccurs="1">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies if multiple users will access the datasource through the getConnection(user, password)
|
|
method and hence if the internal pool type should account for that
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="capacity" type="capacityType" minOccurs="0" maxOccurs="1">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies the capacity policies for the pool
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="connection-listener" type="extensionType" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
An org.jboss.jca.adapters.jdbc.spi.listener.ConnectionListener that provides
|
|
a possible to listen for connection activation and passivation in order to
|
|
perform actions before the connection is returned to the application or returned
|
|
to the pool. Ex:
|
|
<connection-listener class-name="com.acme.jdbc.OracleConnectionListener"/>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
<xs:complexType name="xa-poolType">
|
|
<xs:complexContent>
|
|
<xs:extension base="poolType">
|
|
<xs:sequence>
|
|
<xs:element name="is-same-rm-override" type="xs:boolean" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
The is-same-rm-override element allows one to unconditionally
|
|
set whether the javax.transaction.xa.XAResource.isSameRM(XAResource) returns
|
|
true or false. Ex: <is-same-rm-override>true</is-same-rm-override>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="interleaving" type="boolean-presenceType" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
An element to enable interleaving for XA connection factories
|
|
Ex: <interleaving/>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="no-tx-separate-pools" type="boolean-presenceType" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Oracle does not like XA connections getting used both inside and outside a JTA transaction.
|
|
To workaround the problem you can create separate sub-pools for the different contexts
|
|
using <no-tx-separate-pools/>
|
|
Ex: <no-tx-separate-pools/>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="pad-xid" type="xs:boolean" default="false" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Should the Xid be padded
|
|
Ex: <pad-xid>true</pad-xid>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="wrap-xa-resource" type="xs:boolean" default="true" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Should the XAResource instances be wrapped in an org.jboss.tm.XAResourceWrapper
|
|
instance
|
|
Ex: <wrap-xa-resource>true</wrap-xa-resource>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
</xs:sequence>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
<xs:complexType name="dsSecurityType">
|
|
<xs:sequence>
|
|
<xs:choice>
|
|
<xs:sequence>
|
|
<xs:element name="user-name" type="xs:token" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specify the username used when creating a new connection.
|
|
Ex: <user-name>sa</user-name>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="password" type="xs:token" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specify the password used when creating a new connection.
|
|
Ex: <password>sa-pass</password>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
</xs:sequence>
|
|
<xs:element name="security-domain" type="xs:token" minOccurs="0" maxOccurs="1">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Indicates Subject (from security domain) are used to distinguish connections in the pool.
|
|
The content of the security-domain is the name of the JAAS security manager that will handle
|
|
authentication. This name correlates to the JAAS login-config.xml descriptor
|
|
application-policy/name attribute.
|
|
Ex:
|
|
<security-domain>HsqlDbRealm</security-domain>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
</xs:choice>
|
|
<xs:element name="reauth-plugin" type="extensionType" minOccurs="0" maxOccurs="1"></xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="extensionType">
|
|
<xs:sequence>
|
|
<xs:element name="config-property" type="config-propertyType" minOccurs="0" maxOccurs="unbounded"></xs:element>
|
|
</xs:sequence>
|
|
<xs:attribute name="class-name" type="xs:token" use="required"></xs:attribute>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="config-propertyType" mixed="true">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies a Java bean property value
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:token">
|
|
<xs:attribute use="required" name="name" type="xs:token">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies the name of the config-property
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
<xs:complexType name="recoverType">
|
|
<xs:sequence>
|
|
<xs:element name="recover-credential" type="dsSecurityType" minOccurs="0" maxOccurs="1">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies the security options used when creating a connection during recovery.
|
|
Note: if this credential are not specified the security credential are used for recover too
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="recover-plugin" type="extensionType" minOccurs="0" maxOccurs="1">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies the extension plugin used in spi (core.spi.xa)
|
|
which can be implemented by various plugins to provide better feedback to the XA recovery system.
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
</xs:sequence>
|
|
<xs:attribute name="no-recovery" type="xs:boolean" default="false" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specify if the xa-datasource should be excluded from recovery.
|
|
Default false.
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="driverType">
|
|
<xs:sequence>
|
|
<xs:element name="driver-class" type="xs:token" maxOccurs="1" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
The fully qualifed name of the JDBC driver class Ex: <driver-class>org.hsqldb.jdbcDriver</driver-class>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="xa-datasource-class" type="xs:token" maxOccurs="1" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
The fully qualifed name of the javax.sql.XADataSource implementation
|
|
class. Ex: <xa-datasource-class>oracle.jdbc.xa.client.OracleXADataSource</xa-datasource-class>
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="datasource-class" type="xs:token" maxOccurs="1" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
The fully qualifed name of the javax.sql.DataSource implementation
|
|
class.
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation></xs:element>
|
|
</xs:sequence>
|
|
<xs:attribute name="name" type="xs:token" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies the symbolic name of this driver used to reference this driver
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="module" type="xs:token" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies the name of AS7 module providing this driver.
|
|
This tag is not used in IronJacamar standalone container.
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="major-version" type="xs:int" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies the major version of this driver. If the major and minor versions are omitted the first available
|
|
Driver in module will be used.
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="minor-verion" type="xs:int" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Specifies the minor version of this driver. If the major and minor versions are omitted the first available
|
|
Driver in module will be used.
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="driversType">
|
|
<xs:sequence>
|
|
<xs:element name="driver" type="driverType" maxOccurs="unbounded" minOccurs="1"></xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
<xs:complexType name="capacityType">
|
|
<xs:sequence>
|
|
<xs:element name="incrementer" type="extensionType" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Defines the policy for incrementing connections in the pool
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
<xs:element name="decrementer" type="extensionType" minOccurs="0">
|
|
<xs:annotation>
|
|
<xs:documentation>
|
|
<![CDATA[[
|
|
Defines the policy for decrementing connections in the pool
|
|
]]>
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
</xs:schema>
|