Wednesday 24 October 2007

การ Config Data source ใน JBoss

เมื่อเราต้องการเรียกใช้งาน data source ใน JBoss โดย default data source ของ JBoss 4.0 จะใช้ HypersonicDB ถ้าต้องการใช้ Oracle Database ต้องเข้าไปแก้ไขดังนี้

1. copy Oracle Dirver classes <ORACLE_HOME>/jdbc/lib/classes12.zip to <JBOSS_HOME>/server/default/lib

2. copy Oracle transaction (non-XA) data source <JBOSS_HOME>/docs/examples/jca/oracle-ds.xml to <JBOSS_HOME>/server/default/deploy

3. modify oracle-ds.xml set <connection-url/>, <driver-class/>, <user-name> and <password>

- Oracle OCI Type 2 Driver
Class: oracle.jdbc.driver.OracleDriver
URL: jdbc:oracle:oci8:@<database>
- Oracle OCI Thin Type 4 Driver
Class: oracle.jdbc.driver.OracleDriver
URL: jdbc:oracle:thin:@<host>:<port>:<database>
- Oracle OCI XA Type 2 Driver
Class: oracle.jdbc.xa.client.OracleXADataSource
URL: jdbc:oracle:thin:@<host>:<port>:<database>
- Oracle OCI Type 2 Driver
Class: oracle.jdbc.driver.OracleDriver
URL: jdbc:oracle:oci8:@<database>

<user-name>scott</user-name>
<password>tiger</password>


<host> ชื่อ hostname ที่กำหนดอยู่ใน <ORACLE_HOME>/network/ADMIN/tnsnames.ora ของ instance database นั้นๆ
<port> หมายเลข port ที่กำหนดอยู่ใน <ORACLE_HOME>/network/ADMIN/tnsnames.ora ของ instance database นั้นๆ
<database> ชื่อ database

4. modify <JBOSS_HOME>/server/default/conf/standardjaws.xml or <JBOSS_HOME>/server/default/conf/jaws.xml set <datasource> and <type-mapping>
<jaws>
<datasource>java:/OracleDS</datasource>
<type-mapping>Oracle8</type-mapping>
</jaws>


5. modify <JBOSS_HOME>/server/default/conf/standardjbosscmp-jdbc.xml or META-INF/jbosscmp-jdbc.xml set <datasource> and <datasource-mapping>
<jbosscmp-jdbc>
<defaults>
<datasource>java:/OracleDS</datasource>
<datasource-mapping>Oracle8</datasource-mapping>
</defaults>
</jbosscmp-jdbc>


6. modify <JBOSS_HOME>/server/default/conf/login-config.xml add <application-policy>
<application-policy name = "OracleDbRealm">
<authentication>
<login-module code = "org.jboss.resource.security.ConfiguredIdentityLoginModule" flag = "required">
<module-option name = "principal">sa</module-option>
<module-option name = "userName">sa</module-option>
<module-option name = "password"></module-option>
<module-option name ="managedConnectionFactoryName">
jboss.jca:service=LocalTxCM,name=OracleDS
</module-option>
</login-module>
</authentication>
</application-policy>


แต่ถ้าอยาก config database อื่นเข้าไปดูได้ที่
How to Configuring JBoss 4.0 JDBC Connectivity

1 comment:

Anonymous said...

config เสร็จ
แล้วจะ Test connection ยังไงหรอครับ