【问题标题】:Wildfly unable to load deployments after IntelliJ IDEA deploy在 IntelliJ IDEA 部署后 Wildfly 无法加载部署
【发布时间】:2015-11-24 00:52:49
【问题描述】:

我正在运行我的本地开发 Wildfly 9.0.1 服务器并遇到一个问题,即通过 IntelliJ IDEA 部署我的 .war 应用程序后,我无法打开 Deployments 选项卡它说“Unable to load deployments”。

并且在日志中有一条记录:

16:20:15,868 ERROR [org.jboss.as.controller.management-operation] (XNIO-1 task-10) WFLYCTL0013: Operation ("read-attribute") failed - address: ([
    ("deployment" => "modules-journal"),
    ("subsystem" => "datasources"),
    ("data-source" => "java:jboss/datasources/mj2")
]) - failure description: "WFLYJCA0065: No DataSource exists at address [
    (\"deployment\" => \"modules-journal\"),
    (\"subsystem\" => \"datasources\"),
    (\"data-source\" => \"java:jboss/datasources/mj2\")
]"

是的,我的应用程序在WEB-INF 文件夹中包含数据源定义:

<?xml version="1.0" encoding="UTF-8"?>
<datasources xmlns="http://www.jboss.org/ironjacamar/schema"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://www.jboss.org/ironjacamar/schema http://docs.jboss.org/ironjacamar/schema/datasources_1_0.xsd">
   <!-- The datasource is bound into JNDI at this location. We reference 
      this in META-INF/persistence.xml -->
   <datasource jndi-name="java:jboss/datasources/mj2"
      pool-name="hibernate4-quickstart" enabled="true"
      use-java-context="true">
      <connection-url>jdbc:h2:~/test:mj2</connection-url>
      <driver>h2</driver>
      <security>
         <user-name>test</user-name>
         <password>test</password>
      </security>
   </datasource>
</datasources>

我部署的应用程序可以成功使用它。

为什么 Wildfly 部署 选项卡显示“不存在数据源”并且无法打开,但我的应用程序仍然可以工作?

如果我不使用 IntelliJ IDEA 而是使用 Wildfly Web 界面部署我的应用程序,那么一切正常。

这可能是 IntelliJ IDEA 问题,但从 Wildfly 的角度来看,它看起来很奇怪。

谁能解释一下为什么 Wildfly 报告说它存在时看不到数据源,以及为什么它会阻止 Wildfly 加载“部署选项卡”?我遗漏了 Wildfly 的工作原理,或者这是 Wildfly 中的一个错误?

【问题讨论】:

    标签: intellij-idea jndi wildfly application-server


    【解决方案1】:

    您是否通过管理界面查看您的数据源?基于文件的数据源部署已被弃用,并且无法在运行时进行管理 [1]。 IDEA 可能会尝试使用 jboss 管理检查数据源并得到错误。

    [1]http://www.mastertheboss.com/jboss-server/jboss-datasource/jboss-as-7-deployable-datasources

    【讨论】:

    • 不,数据源未显示在管理界面中,但是当我尝试添加它时,我收到错误 org.jboss.msc.service.DuplicateServiceException: Service jboss.data-source.java:jboss/datasources/mj2 is already registered。 IDEA 不会出错,但 Wildfly 在我想查看所有部署时会出错。
    • 您不能将 2 个数据源绑定到同一个 jndi 名称。删除WEB-INF中的那个,通过管理控制台配置数据源
    • 我知道,我不想。我只想打开 Wildfly 部署管理选项卡)
    • ok :) 那么你应该把它报告给 IDEA jboss-as plugin issue tracker
    • 也许吧。但是对于 Wildfly 来说,部署工件失败(如果 IDEA 做错了什么)然后显示部署失败会更好
    猜你喜欢
    • 2017-07-12
    • 2015-04-02
    • 2017-03-12
    • 2018-06-20
    • 2016-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多