JBAS014775:New missing/unsatisfied dependencies:service jboss.jdbc-driver.ojdbc7_jar (missing) dependents: [service jboss.data-source.java:/JNDIName

JBAS014775:New missing/unsatisfied dependencies:service jboss.jdbc-driver.ojdbc7_jar (missing) dependents: [service jboss.data-source.java:/JNDIName

我使用 netbeans 8.1。我尝试在其上设置 JBoss 7.1.1。我的数据库连接是 oracle。但是当我 运行 我的企业应用程序时,我的控制台上出现错误,如 JBAS014775:New missing/unsatisfied dependencies。 standalone.xml

 <datasource jta="false" jndi-name="java:/ETOBSORACLEJNDI" pool-name="oracle-thin_GTBDEV1_ETOBSPool" enabled="true" use-ccm="false">
                <connection-url>jdbc:oracle:thin:@***************</connection-url>
                <driver-class>oracle.jdbc.OracleDriver</driver-class>
                <driver>ojdbc7.jar</driver>
                <security>
                    <user-name>ETOBS</user-name>
                    <password>*******</password>
                </security>

  </datasource>

module.xml

<module xmlns="urn:jboss:module:1.1" name="com.oracle.ojdbc">
<resources>
    <resource-root path="ojdbc7.jar"/>
</resources>
<dependencies>
    <module name="javax.api"/>
    <module name="javax.transaction.api"/>
    <module name="javax.servlet.api" optional="true"/>

有什么建议吗?

按照以下步骤一步步进行:

  • 安装 JDBC 驱动程序作为核心模块

在 $JBOSS_HOME/modules 下创建一个目录。在这个例子中:“$JBOSS_HOME/modules/com/oracle/jdbc/main”。 将 JDBC 驱动程序 jar (ojdbc7.jar) 放入此目录

  • 创建模块配置文件module.xml:

  • 请注意 jdbc 驱动程序 jar 必须包含一个 META-INF/services/java.sql.Driver 文本文件指定 jdbc 驱动程序,否则 Java 用于加载驱动程序的服务提供者机制将不起作用。来自 main/common 的供应商,只有 Informix 没有开箱即用的功能。

  • 在 standalone.xml 或 domain.xml 中配置数据源设置。

  • 您现在可以编辑您的独立(-).xml 或域(-).xml 来配置数据源引用此模块:

    jdbc:oracle:thin:@myhostname:1521:oracle 甲骨文 10 20 真的 我的用户 我的通行证 真的 oracle.jdbc.xa.client.OracleXADataSource

  • 任何 JDBC 4 兼容的驱动程序将通过 Java 服务提供商机制按名称和版本自动识别并安装到系统中。这样的 JDBC 4 兼容驱动程序有一个名为 META-INF/services/java.sql.Driver 的文本文件,其中包含 JDBC 驱动程序的 class(es) 的名称,在那个罐子。但是,非 JDBC 4 兼容的驱动程序 JAR 不包含此类 META-INF/services/java.sql.Driver 文件。所以它需要一些修改才能部署。使用Java时使用ojdbc7.jar 1.7 .

如果您有任何问题,请尝试此操作附加 server.log 文件。

module.xml

<module xmlns="urn:jboss:module:1.1" name="com.oracle.jdbc">
      <resources>
        <resource-root path="ojdbc7.jar"/>
      </resources>
      <dependencies>
        <module name="javax.api"/>
        <module name="javax.transaction.api"/>
      </dependencies>
    </module>

standalone(-).xml 或 domain(-).xml 配置引用此模块的数据源:

<subsystem xmlns="urn:jboss:domain:datasources:1.2">
        <datasources>
          <datasource jndi-name="java:jboss/datasources/OracleDS" pool-name="OracleDS" enabled="true" use-java-context="true">
            <connection-url>jdbc:oracle:thin:@myhostname:1521:oracle</connection-url>
            <driver>oracle</driver>
            <pool>
              <min-pool-size>10</min-pool-size>
              <max-pool-size>20</max-pool-size>
              <prefill>true</prefill>
            </pool>
            <security>
              <user-name>myuser</user-name>
              <password>mypass</password>
            </security>
            <validation>
              <validate-on-match>true</validate-on-match>
              <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.oracle.OracleValidConnectionChecker"></valid-connection-checker>
              <stale-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.oracle.OracleStaleConnectionChecker"></stale-connection-checker>
              <exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.oracle.OracleExceptionSorter"></exception-sorter>
            </validation>
          </datasource>
          <drivers>
            <driver name="oracle" module="com.oracle.jdbc">
              <xa-datasource-class>oracle.jdbc.xa.client.OracleXADataSource</xa-datasource-class>
            </driver>
          </drivers>
        </datasources>
      </subsystem>