gpt4 book ai didi

java - Wildfly 未安装所需的服务 :\

转载 作者:行者123 更新时间:2023-11-30 02:24:49 26 4
gpt4 key购买 nike

我尝试部署 JPA Rest 应用程序,并在尝试在 Wildfly 10 上部署时遇到以下错误。

错误:

"{
\"WFLYCTL0412: Required services that are not installed:\" => [
\"jboss.naming.context.java.app.\\\"internal-1.0\\\".newDevConnection\",
\"jboss.naming.context.java.jboss.datasources.ExampleDS\"
],
\"WFLYCTL0180: Services with missing/unavailable dependencies\" => [
\"jboss.naming.context.java.module.\\\"internal-1.0\\\".\\\"internal-1.0\\\".DefaultDataSource is missing [jboss.naming.context.java.jboss.datasources.ExampleDS]\",
\"jboss.persistenceunit.\\\"internal-1.0.war#com.e24_MavenProjectTest_war_1.0-SNAPSHOTPU\\\" is missing [jboss.naming.context.java.app.\\\"internal-1.0\\\".newDevConnection]\",
\"jboss.persistenceunit.\\\"internal-1.0.war#com.e24_MavenProjectTest_war_1.0-SNAPSHOTPU\\\".__FIRST_PHASE__ is missing [jboss.naming.context.java.app.\\\"internal-1.0\\\".newDevConnection]\"
]
}"

持久性.xml

<persistence-unit name="app-pu" transaction-type="JTA">
<jta-data-source>java:/newDevConnection</jta-data-source>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties/>
</persistence-unit>

standalone.xml 中的数据源

<datasources>
<datasource jndi-name="java:/newDevConnection" pool-name="secret" enabled="true" use-java-context="true">
<connection-url>jdbc:mysql://secret...</connection-url>
<driver>mysql</driver>
<security>
<user-name>secret</user-name>
<password>secret</password>
</security>
</datasource>
<drivers>
<driver name="com.mysql" module="mysql.mysql-connector-java">
<xa-datasource-class>com.mysql.jdbc.jdbc2.optional.MysqlXADataSource</xa-datasource-class>
</driver>
<driver name="mysql" module="org.mysql">
<driver-class>com.mysql.jdbc.Driver</driver-class>
</driver>
</drivers>
</datasources>

编辑:mysql jdbc驱动程序位于project/WEB-INF/lib文件夹

“xa-datasource”和“non-xa-datasource”有什么区别?

我走在正确的道路上吗?提前致谢/马库斯

最佳答案

我知道它已经存在一年了,但如果其他人遇到这个问题,我会发布我为这个问题所做的工作。作为新的 JBOSS 管理员,我花了很长时间才弄清楚这一点。

简短的故事是,ExampleDS 在配置文件中保留了一个默认部分,这是您的错误的来源。我通常使用域配置文件,因此我将展示我的示例,但独立版是相同的,只需将配置文件名称放在前面即可。 Default-Bindings 是 ee 子系统中的部分。

<default-bindings context-service="java:jboss/ee/concurrency/context/default" datasource="java:jboss/datasources/ExampleDS" managed-executor-service="java:jboss/ee/concurrency/executor/default" managed-scheduled-executor-service="java:jboss/ee/concurrency/scheduler/default" managed-thread-factory="java:jboss/ee/concurrency/factory/default"/>

默认的datasource="java:jboss/datasources/ExampleDS是问题的根源。

您可以删除默认数据源并将其设置为未定义。

/profile=Profile_NameHere/subsystem=datasources/data- 
source=ExampleDS:remove()
/profile=Profile_NameHere/subsystem=ee/service=default-bindings:write-
attribute(name=datasource,value=undefined)

或者

您可以将自己的数据源设置为默认值。

/profile=Profile_NameHere/subsystem=ee/service=default-bindings:write- 
attribute(name=datasource,value=java\:\/jboss\/datasources/name)

关于java - Wildfly 未安装所需的服务 :\,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45917486/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com