我正在使用一個WAR項目來開發Web應用程序。它使用JPA,並有一個數據源,我需要配置運行在JBOSS 7。該數據庫是Oracle。Jboss 7 - Oracle數據源不起作用
我得到這個錯誤:使用JBoss的數據源
JBAS014775: New missing/unsatisfied dependencies:
service jboss.naming.context.java.jboss.resources.jboss.jdbc.batchAdminDB
我跟着指示。所以,我有以下配置:
{JBOSS_HOME} /modules/com/oracle/ojdbc6/main/module.xml:
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.1" name="com.oracle.ojdbc6">
<resources>
<resource-root path="ojdbc6.jar"/>
</resources>
<dependencies>
<module name="javax.api" />
<module name="javax.transaction.api"/>
<module name="javax.servlet.api" optional="true"/>
</dependencies>
</module>
ojdbc6.jar存在和名稱是否正確。
standalone.xml
<datasources>
<datasource jndi-name="java:jboss/jdbc/batchAdminDB" pool-name="batchAdminDB" enabled="true" use-java-context="true">
<connection-url>jdbc:oracle:thin:@HOST:PORT/xe</connection-url>
<driver>oracle</driver>
<security>
<user-name>USER</user-name>
<password>PASSW</password>
</security>
</datasource>
<drivers>
<driver name="oracle" module="com.oracle.ojdbc6">
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
<xa-datasource-class>oracle.jdbc.xa.client.OracleXADataSource</xa-datasource-class>
</driver>
</drivers>
</datasources>
在應用程序: META-INF/的persistence.xml:
<persistence-unit name="batchAdminEM" transaction-type="JTA">
<jta-data-source>java:jboss/jdbc/batchAdminDB</jta-data-source>
<class>...</class>
...</persistence-unit>
Jboss時開始(不應用程序)也能讀到(綁定)數據源。我嘗試部署應用程序時出現錯誤,但無法運行。
更多堆棧跟蹤,以幫助:
15:57:46,888 INFO [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-1) JBAS010400: Bound data source [java:jboss/jdbc/batchAdminDB]
...
15:57:52,356 INFO [org.hibernate.ejb.Ejb3Configuration] (MSC service thread 1-2) HHH000204: Processing PersistenceUnitInfo [
name: batchAdminEM
...]
15:57:53,649 ERROR [org.jboss.as] (MSC service thread 1-1) JBAS015875: JBoss AS 7.1.1.Final "Brontes" started (with errors) in 13255ms - Started 325 of 568 services (165 services failed or missing dependencies, 76 services are passive or on-demand)
15:57:53,861 INFO [org.jboss.as.server] (DeploymentScanner-threads - 2) JBAS015870: Deploy of deployment "BatchAdmin.war" was rolled back with failure message {"JBAS014771: Services with missing/unavailable dependencies" => ["jboss.naming.context.java.module.BatchAdmin.BatchAdmin.env.jboss.jdbc.batchAdminDBjboss.naming.context.java.jboss.resources.jboss.jdbc.batchAdminDBMissing[jboss.naming.context.java.module.BatchAdmin.BatchAdmin.env.jboss.jdbc.batchAdminDBjboss.naming.context.java.jboss.resources.jboss.jdbc.batchAdminDB]"]}
JBAS014775: New missing/unsatisfied dependencies:
service jboss.naming.context.java.jboss.resources.jboss.jdbc.batchAdminDB (missing) dependents: [service jboss.naming.context.java.module.BatchAdmin.BatchAdmin.env.jboss.jdbc.batchAdminDB]
15:57:53,934 ERROR [org.jboss.as.server.deployment.scanner] (DeploymentScanner-threads - 1) {"JBAS014653: Composite operation failed and was rolled back. Steps that failed:" => {"Operation step-2" => {"JBAS014771: Services with missing/unavailable dependencies" => ["jboss.naming.context.java.module.BatchAdmin.BatchAdmin.env.jboss.jdbc.batchAdminDBjboss.naming.context.java.jboss.resources.jboss.jdbc.batchAdminDBMissing[jboss.naming.context.java.module.BatchAdmin.BatchAdmin.env.jboss.jdbc.batchAdminDBjboss.naming.context.java.jboss.resources.jboss.jdbc.batchAdminDB]"]}}}
我見過http://stackoverflow.com/questions/9481510/deploying-ejb-over-jboss-7-1,HTTP://堆棧溢出。com/questions/10102826 /無法定義-oracle-datasource-on-jboss-as-7等,但沒有一個然後爲我工作 –