123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!--
- ~ JBoss, Home of Professional Open Source.
- ~ Copyright 2011, Red Hat, Inc., and individual contributors
- ~ as indicated by the @author tags. See the copyright.txt file in the
- ~ distribution for a full listing of individual contributors.
- ~
- ~ This is free software; you can redistribute it and/or modify it
- ~ under the terms of the GNU Lesser General Public License as
- ~ published by the Free Software Foundation; either version 2.1 of
- ~ the License, or (at your option) any later version.
- ~
- ~ This software is distributed in the hope that it will be useful,
- ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
- ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- ~ Lesser General Public License for more details.
- ~
- ~ You should have received a copy of the GNU Lesser General Public
- ~ License along with this software; if not, write to the Free
- ~ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- ~ 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- -->
- <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
- targetNamespace="urn:jboss:domain:datasources:1.1" xmlns="urn:jboss:domain:datasources:1.1"
- 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-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: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="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="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), IdleConnections, EntirePool
- ]]>
- </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: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="false" minOccurs="0">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[[
- Should the XAResource instances be wrapped in a 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: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: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: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="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: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: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.
- Thios 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 version is obmitted the fist availabe
- 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 version is obmitted the fist availabe
- 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:schema>
|