Как создать источник данных в сервере приложений JBoss
Кто-нибудь может предоставить шаги для создания источника данных на сервере JBoss (5.0) с базой данных Oracle.
Заранее спасибо
2 ответа
Решение
В этом примере предполагается, что вы используете Oracle 10i.
В JBoss 5 создайте файл XML, заканчивающийся на -ds.xml
(хотя не обязательно -ds
, это должен быть файл XML). со следующими элементами дескриптора.
Это пример источника данных Local-TX.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE datasources
PUBLIC "-//JBoss//DTD JBOSS JCA Config 1.5//EN"
"http://www.jboss.org/j2ee/dtd/jboss-ds_1_5.dtd">
<datasources>
<local-tx-datasource>
<jndi-name>MyDataSourceName</jndi-name>
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
<connection-url>jdbc:oracle:oci:@(description=(address=(host=youroraclehost)(protocol=tcp)(port=1521))(connect_data=(SERVICE_NAME=yourservicename)))</connection-url>
<user-name>myUserName</user-name>
<password>myPassword</password>
<min-pool-size>20</min-pool-size>
<metadata>
<type-mapping>Oracle9i</type-mapping>
</metadata>
</local-tx-datasource>
</datasources>
Вы можете иметь более 1 <local-tx-datasource>
элемент но <jndi-name>
должен быть уникальным.
Для источника данных XA, см. Пример здесь.
Приведенный выше пример сохраняется в MyDataSourceName-ds.xml
,
Файл XML должен быть помещен в JBOSS_HOME/server/<default|all>/deploy
папка.
Теперь на Java вы получите MyDataSourceName
следующее:
InitialContext ctx = new InitialContext();
DataSource ds = (DataSource)ctx.lookup("java:MyDataSourceName");
Connection connection = ds.getConnection();