【问题标题】:JBOSS 6.2 EAP Missing Dependents Data-SourceJBOSS 6.2 EAP 缺少依赖数据源
【发布时间】:2015-05-28 11:30:28
【问题描述】:

添加更新: 我能够解决。抓住ojdbc6.jar并使用而不是14。我通过将<driver>oracle</driver>中的名称更改为.jar的名称<driver>ojdbc6.jar</driver>来解决,这允许数据源使用ojdbc6的oracle驱动程序。

据我所知,我们不必创建模块,但可以将 .jar 放入部署文件中,JBOSS 将即时部署。我们只需要在驱动程序名称中引用。对我来说,模块没有正确添加,所以很高兴找到这个替代解决方案。目前不确定是否会下跌。

####### Original Problem Below #######

寻求有关数据源错误的帮助。我正在将 5.1 JBOSS 应用程序迁移到 6.2 JBOSS 应用程序。在网上花了几天时间学习如何配置 JBOSS 6.2 后,我收到以下错误。我们的团队需要迁移到 JBOSS 6.2。我尝试了几种不同的方式来配置 XML。我已经尝试过模块与将 .jar 放在部署文件夹中。

我目前的设置如下:

ojdbc14.jar 在部署文件夹中

我已将standalone.xml 更新如下:

 <datasources>
    <datasource jndi-name="java:/jdbc/CCASDataSource"
    pool-name="CCASDataSource"
    enabled="true"
    use-java-context="true">
    <connection-url>jdbc:oracle:thin:@##########:1521:########</connection-url>
    <driver>oracle</driver>
    <pool>
    <min-pool-size>1</min-pool-size>
    <max-pool-size>20</max-pool-size>
    </pool>
    <security>
    <user-name>######</user-name>
    <password>###### </password>    
    </security>
    </datasource>   
    </datasources>  

错误:

15:00:41,684 INFO [org.jboss.modules] (main) JBoss Modules 版本 1.3.0.Final-redhat-2

15:00:42,089 INFO [org.jboss.msc](主要)JBoss MSC 版本 1.0.4.GA-redhat-1

15:00:42,151 INFO [org.jboss.as](MSC 服务线程 1-6)JBAS015899: JBoss EAP 6.2.0.GA (AS 7.3.0.Final-redhat-14) 开始

15:00:43,381 信息 [org.jboss.as.server.deployment.scanner] (DeploymentScanner-threads - 1) JBAS015003: 发现 ccas.ear 在 部署目录。要触发部署,请创建一个名为 ccas.ear.dodeploy

15:00:43,403 INFO [org.xnio](MSC 服务线程 1-3)XNIO 版本 3.0.7.GA-redhat-1

15:00:43,404 INFO [org.jboss.as.server](控制器引导线程) JBAS015888:使用套接字绑定创建 http 管理服务 (管理-http)

15:00:43,410 INFO [org.xnio.nio](MSC 服务线程 1-3)XNIO NIO 实现版本 3.0.7.GA-redhat-1

15:00:43,417 INFO [org.jboss.remoting](MSC 服务线程 1-3)JBoss 远程处理版本 3.2.18.GA-redhat-1

15:00:43,470 INFO [org.jboss.as.security](ServerService 线程池 -- 42) JBAS013171: 激活安全子系统

15:00:43,475 INFO [org.jboss.as.naming] (ServerService 线程池 -- 37) JBAS011800:激活命名子系统

15:00:43,490 INFO [org.jboss.as.webservices](服务器服务线程 池 -- 46) JBAS015537: 激活 WebServices 扩展

15:00:43,500 INFO [org.jboss.as.security](MSC 服务线程 1-5) JBAS013170:当前PicketBox 版本=4.0.19.SP2-redhat-1

15:00:43,504 INFO [org.jboss.as.jsf] (ServerService 线程池 -- 35) JBAS012605:激活了以下 JSF 实现:[main, 1.2]

15:00:43,520 信息 [org.jboss.as.clustering.infinispan] (ServerService 线程池 -- 29) JBAS010280: 激活 Infinispan 子系统。

15:00:43,523 INFO [org.jboss.as.naming](MSC 服务线程 1-1) JBAS011802:启动命名服务

15:00:43,566 INFO [org.jboss.as.connector.logging](MSC 服务 线程 1-6) JBAS010408: 启动 JCA 子系统 (IronJacamar 1.0.23.Final-redhat-1)

15:00:43,582 INFO [org.jboss.as.mail.extension](MSC 服务线程 1-5) JBAS015400: 绑定邮件会话 [java:jboss/mail/Default]

15:00:44,281 INFO [org.jboss.ws.common.management](MSC 服务 线程 1-1) JBWS022052:启动 JBoss Web 服务 - 堆栈内存溢出 4.2.3.Final-redhat-1

15:00:44,301 信息 [org.jboss.as.server.deployment.scanner] (MSC 服务线程 1-3) JBAS015012: 启动 FileSystemDeploymentService 对于目录 C:\jboss-eap-6.2_CCAS\standalone\deployments

15:00:44,307 INFO [org.jboss.as.server.deployment](MSC 服务 线程 1-1) JBAS015876: 开始部署“ccas.ear” (运行时名称:“ccas.ear”)

15:00:44,308 INFO [org.jboss.as.server.deployment](MSC 服务 线程 1-3) JBAS015876: 开始部署“ojdbc14.jar” (运行时名称:“ojdbc14.jar”)

15:00:44,367 INFO [org.jboss.as.server.deployment](MSC 服务 线程 1-1)JBAS015876:开始部署“null”(运行时名称: “ccas.war”)

15:00:44,412 INFO [org.jboss.as.remoting](MSC 服务线程 1-7) JBAS017100:监听 127.0.0.1:9999

15:00:44,416 INFO [org.jboss.as.remoting](MSC 服务线程 1-8) JBAS017100:监听 127.0.0.1:4447

15:00:44,454 INFO [org.apache.coyote.http11](MSC 服务线程 1-6) JBWEB003001:Coyote HTTP/1.1 正在初始化: http-dev.mytest.com/127.0.0.1:8080

15:00:44,491 INFO [org.apache.coyote.http11](MSC 服务线程 1-6) JBWEB003000:Coyote HTTP/1.1 开始于: http-dev.mytest.com/127.0.0.1:8080

15:00:44,942 信息 [org.infinispan.factories.GlobalComponentRegistry] (ServerService 线程池 -- 65)ISPN000128:Infinispan 版本: Infinispan 'Delirium' 5.2.7.Final

15:00:44,986 信息 [org.infinispan.factories.TransactionManagerFactory] ​​(ServerService 线程池 -- 65) ISPN000161:使用批处理模式事务管理器

15:00:44,987 信息 [org.infinispan.factories.TransactionManagerFactory] ​​(ServerService 线程池 -- 67) ISPN000161:使用批处理模式事务管理器

15:00:45,168 信息 [org.infinispan.jmx.CacheJmxRegistration] (ServerService 线程池 -- 65) ISPN000031: MBeans 成功 注册到平台 MBean 服务器。

15:00:45,169 信息 [org.infinispan.jmx.CacheJmxRegistration] (ServerService 线程池 -- 67) ISPN000031: MBeans 成功 注册到平台 MBean 服务器。

15:00:45,170 信息 [org.jboss.as.clustering.infinispan] (ServerService 线程池 -- 65) JBAS010281: 从 web 启动本地 web 缓存 容器

15:00:45,172 信息 [org.jboss.as.clustering.infinispan] (ServerService 线程池 -- 67) JBAS010281: 从默认主机/ccas 缓存开始 网络容器

15:00:45,182 INFO [org.jboss.web] (ServerService 线程池 -- 67) JBAS018210:注册网络上下文:/ccas

15:00:45,748 INFO [org.jboss.as.server] (ServerService 线程池 -- 26)JBAS018559:部署“ojdbc14.jar”(运行时名称:“ojdbc14.jar”)

15:00:45,748 INFO [org.jboss.as.server] (ServerService 线程池 -- 26)JBAS018559:部署“ccas.ear”(运行时名称:“ccas.ear”)

15:00:45,749 INFO [org.jboss.as.controller](控制器引导线程) JBAS014774:服务状态报告

JBAS014775:新的缺失/未满足的依赖项:

  service jboss.jdbc-driver.oracle (missing) dependents: [service jboss.data-source.java:/jdbc/CCASDataSource, service

jboss.driver-demander.java:/jdbc/CCASDataSource]

15:00:45,811 INFO [org.jboss.as](控制器引导线程)​​JBAS015961: Http管理接口监听 http://127.0.0.1:9990/management

15:00:45,811 INFO [org.jboss.as](控制器引导线程)​​JBAS015951: 管理控制台监听http://127.0.0.1:9990

15:00:45,812 错误 [org.jboss.as](控制器引导线程)​​JBAS015875: JBoss EAP 6.2.0.GA (AS 7.3.0.Final-redhat-14) 在 4518ms - 启动了 430 个服务中的 360 个(3 个服务失败或丢失 依赖关系,66 个服务是被动的或按需的)

【问题讨论】:

  • 仅供参考,ojdbc14.jar 是古老的。你不应该使用它。
  • 我一直在尝试 ojdbc6 和 14 都无济于事。
  • 如果你发布你的答案,我可以奖励你积分@OldProgrammer

标签: jboss oracle11g jboss5.x jboss6.x


【解决方案1】:

您将需要添加 oracle jdbc 驱动程序,例如在部署应用程序之前,将 ojdcb6.jar 作为 JBoss 模块 放入 JBoss 节点。这还允许您在部署应用程序之前通过 JBoss 控制台(和/或 CLI)测试数据源连接是否正常工作。

创建如下目录路径:

${JBOSS_HOME}\modules\com\oracle\ojdbc6\main

将您的 ojdbc6.jar 放在这里,并在同一目录中创建一个 module.xml 文件,内容如下:

<?xml version="1.0" ?>
<module xmlns="urn:jboss:module:1.1" name="com.oracle" slot="main">

    <resources>
        <resource-root path="ojdbc6.jar"/>
    </resources>

    <dependencies>
        <module name="javax.api"/>
        <module name="javax.transaction.api"/>
    </dependencies>
</module>

然后在您的 JBoss standalone.xml 文件中 - 在您的部分添加

<drivers>
    <driver name="oracle" module="com.oracle">
         <xa-datasource-class>oracle.jdbc.xa.client.OracleXADataSource</xa-datasource-class>
    </driver>
</drivers>

最终的解决方案在 Redhat 站点 - 请参阅 https://access.redhat.com/solutions/93693 ...您需要一个 redhat 支持帐户才能访问此站点。

【讨论】:

  • 您的命名略有偏差,但这个概念看起来就像我看到的每个帖子都在做这个模块,但我们不必创建一个模块。这就是我上面所做的。
猜你喜欢
  • 2014-10-13
  • 1970-01-01
  • 2017-01-20
  • 2014-07-28
  • 1970-01-01
  • 2015-02-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多