我正在使用ojdbc6-11.2.0.3.jar
,驅動程序在兩種配置下都能正常工作。
我與JBoss的保險絲控制檯
jdbc:query jdbc/oracle 'select * from somewhere.sometable WHERE rownum < 5'
檢查JDBC和JNDI安裝查詢
features:install jdbc
features:install jndi
您可以用下面的內容放置一個XML文件到deploy/
,自動將已經測試了它部署了一個數據源。
OracleDataSource
<?xml version="1.0" encoding="UTF-8"?>
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0">
<bean id="oracleDSTest" class="oracle.jdbc.pool.OracleDataSource"
destroy-method="close">
<property name="URL" value="jdbc:oracle:thin:@db.host:1521:SID" />
<property name="user" value="UrName" />
<property name="password" value="YourPasswrd" />
</bean>
<service interface="javax.sql.DataSource" ref="oracleDSTest">
<service-properties>
<entry key="osgi.jndi.service.name" value="jdbc/oracle" />
<entry key="datasource.name" value="oracleDSTest" />
</service-properties>
</service>
</blueprint>
的BasicDataSource
<bean id="oracleDSTest" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" />
<property name="url" value="jdbc:oracle:thin:@db.host:1521:SID"/>
<property name="username" value="UrName"/>
<property name="password" value="YourPasswrd"/>
<property name="maxIdle" value="5" />
<property name="minIdle" value="1" />
<property name="initialSize" value="1" />
</bean>
<service interface="javax.sql.DataSource" ref="oracleDSTest">
<service-properties>
<entry key="osgi.jndi.service.name" value="jdbc/oracle" />
<entry key="datasource.name" value="oracleDSTest" />
</service-properties>
</service>
類加載
請英里nd此版本的Oracle JDBC驅動程序是而不是 OSGi已準備就緒。 爲了讓所有東西都能在OSGi下運行,您可能需要從 系統軟件包中導出Oracle類。
複製ojdbc6-11.2.0.3.jar
(或您的版本)到JBoss Fuse的lib/
文件夾。
編輯etc/config.properties
和軟件包添加到org.osgi.framework.system.packages
財產
org.osgi.framework.system.packages= \
other.packages.here, \
oracle.jdbc;version="11.2.0.3", \
oracle.jdbc.driver;version="11.2.0.3", \
oracle.jdbc.pool;version="11.2.0.3", \
some.other.stuff
重新啓動,並與exports | grep oracle
JBossFuse:[email protected]> exports | grep oracle
0 oracle.jdbc; version=11.2.0.3
0 oracle.jdbc.driver; version=11.2.0.3
0 oracle.jdbc.pool; version=11.2.0.3
檢查Oracle罐子哪個版本您使用的? –
ojdbc(11.2.0.0) – muru
我花了一些時間來檢查:我的機器上一切正常。儘管我使用的是稍微不同的版本。 –