IntelliJ IDEA部署后,Wildfly无法加载部署

时间:2015-08-29 13:38:01

标签: intellij-idea jndi wildfly application-server

我正在运行我的本地dev Wildfly 9.0.1 服务器并遇到一个问题,在我通过IntelliJ IDEA部署我的.war应用程序后,我无法打开部署标签“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加载“Deployments”选项卡?我错过了Wildfly如何工作的东西,或者它是Wildfly中的一个错误?

1 个答案:

答案 0 :(得分:0)

您是否通过管理界面看到了您的数据源?不推荐使用基于文件的数据源部署,这些部署在运行时不可用于管理[1]。 IDEA可能会尝试使用jboss管理检查数据源并收到错误。

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