Hibernate模块错误OGM + MongoDB和Wildfly 10 [英] Hibernate module error OGM + MongoDB and Wildfly 10
问题描述
<$ c $c> 11:13:17,164错误[org.jboss.msc.service.fail](MSC服务线程1-4)MSC000001:无法启动服务jboss.module.service。deployment.brx-plataforma.war.main :服务jboss.module.service中的org.jboss.msc.service.StartException。deployment.brx-plataforma.war.main:WFLYSRV0179:无法加载模块:deployment.brx-plataforma.war:main
at org.jboss.as.server.moduleservice.ModuleLoadService.start(ModuleLoadService.java:91)
at org.jboss.msc.service.ServiceControllerImpl $ StartTask.startService(ServiceControllerImpl.java:1948)
在org.jboss.msc.service.ServiceControllerImpl $ StartTask.run(ServiceControllerImpl.java:1881)
在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
在java.util .concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:617)$ b $ at java.lang.Thread.run(Thread.j ava:745)
原因:org.jboss.modules.ModuleNotFoundException:org.hibernate:ogm
at org.jboss.modules.Module.addPaths(Module.java:1093)
在org.jboss.modules.Module.link(Module.java:1449)
在org.jboss.modules.Module.relinkIfNecessary(Module.java:1477)
在org.jboss。 modules.ModuleLoader.loadModule(ModuleLoader.java:225)
at org.jboss.as.server.moduleservice.ModuleLoadService.start(ModuleLoadService.java:68)
... 5 more
11:13:17,192错误[org.jboss.as.controller.management-operation](控制器引导线程)WFLYCTL0013:操作(部署)失败 - 地址:([(deployment=> brx-plataforma.war)]) - 失败描述:{
WFLYCTL0080:Failed services=> {jboss.module.service.\deployment.brx-plataforma.war\.main=> 服务中的org.jboss.msc.service.StartException jboss.module.service.\deployment.brx-plataforma.war\.main:WFLYSRV0179:无法加载模块:deployment.brx-plataforma.war:main
导致:org.jboss.modules.ModuleNotFoundException:org.hibernate:ogm},
WFLYCTL0412:未安装的必需服务:=> [jboss.module.service.\deployment.brx-plataforma.war\.main],
WFLYCTL0180:缺少/不可用依赖关系的服务=> undefined
$ / code>
mongoDB没有Hibernate OGM模块,实际上没有OGM module
<?xml version =1.0encoding =UTF-8?>
< project xmlns =http://maven.apache.org/POM/4.0.0xmlns:xsi =http://www.w3.org/2001/XMLSchema-instance
xsi:schemaLocation =http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd\">
< modelVersion> 4.0.0< / modelVersion>
< groupId> br.com.brx< / groupId>
< artifactId> brx-plataforma< / artifactId>
< version> 0.0.1-SNAPSHOT< / version>
<包装>战争< / packaging>
<名称> brx-plataforma< / name>
<属性>
< project.build.sourceEncoding> UTF-8< /project.build.sourceEncoding>
< version.jboss.bom> 10.0.0.Final< /version.jboss.bom>
< / properties>
< dependencyManagement>
<依赖关系>
<! - Configuracao tools jboss - >
< dependency>
< groupId> org.wildfly.bom< / groupId>
< artifactId> wildfly-javaee7-with-tools< / artifactId>
< version> $ {version.jboss.bom}< / version>
< type> pom< / type>
< scope> import< / scope>
< /依赖关系>
<! - Hibernate OGM - MongoDB - >
< dependency>
< groupId> org.hibernate.ogm< / groupId>
< artifactId> hibernate-ogm-bom< / artifactId>
< version> 5.0.4.Final< / version>
< type> pom< / type>
< scope> import< / scope>
< /依赖关系>
< /依赖关系>
< / dependencyManagement>
<依赖关系>
<! - CDI - >
< dependency>
< groupId> javax.enterprise< / groupId>
< artifactId> cdi-api< / artifactId>
< scope>提供< / scope>
< /依赖关系>
<! - Jboss注释 - >
< dependency>
< groupId> org.jboss.spec.javax.annotation< / groupId>
< artifactId> jboss-annotations-api_1.2_spec< / artifactId>
< scope>提供< / scope>
< /依赖关系>
<! - JAX-RS - >
< dependency>
< groupId> org.jboss.spec.javax.ws.rs< / groupId>
< artifactId> jboss-jaxrs-api_2.0_spec< / artifactId>
< scope>提供< / scope>
< /依赖关系>
<! - - JPA - >
< dependency>
< groupId> org.hibernate.javax.persistence< / groupId>
< artifactId> hibernate-jpa-2.1-api< / artifactId>
< scope>提供< / scope>
< /依赖关系>
<! - EJB - >
< dependency>
< groupId> org.jboss.spec.javax.ejb< / groupId>
< artifactId> jboss-ejb-api_3.2_spec< / artifactId>
< scope>提供< / scope>
< /依赖关系>
<! - JUnit - >
< dependency>
< groupId> junit< / groupId>
< artifactId> junit< / artifactId>
< version> 3.8.1< / version>
< scope> test< / scope>
< /依赖关系>
<! - Hibernate OGM - MongoDB - >
< dependency>
< groupId> org.hibernate.ogm< / groupId>
< artifactId> hibernate-ogm-mongodb< / artifactId>
< /依赖关系>
< / dependencies>
< build>
<! - Maven - Java 8 - >
< finalName> $ {project.artifactId}< / finalName>
< plugins>
< plugin>
< groupId> org.apache.maven.plugins< / groupId>
< artifactId> maven-compiler-plugin< / artifactId>
< version> 3.1< / version>
<配置>
< source> 1.8< / source>
< target> 1.8< / target>
< / configuration>
< / plugin>
< plugin>
< groupId> org.wildfly.plugins< / groupId>
< artifactId> wildfly-maven-plugin< / artifactId>
< version> 1.0.2.Final< / version>
< / plugin>
< plugin>
< artifactId> maven-war-plugin< / artifactId>
< version> 2.1.1< / version>
<配置>
<! - Java EE 6不需要web.xml,Maven需要赶上! - >
< failOnMissingWebXml> false< / failOnMissingWebXml>
< / configuration>
< / plugin>
< plugin>
< groupId> org.apache.maven.plugins< / groupId>
< artifactId> maven-ear-plugin< / artifactId>
< version> 2.8< / version>
<配置>
< version> 6< / version>
< defaultLibBundleDir> lib< / defaultLibBundleDir>
< / configuration>
< / plugin>
< / plugins>
< / build>
<个人资料>
<个人资料>
< id>预设< / id>
<激活>
< activeByDefault> true< / activeByDefault>
< / activation>
< build>
< plugins>
< plugin>
< artifactId> maven-surefire-plugin< / artifactId>
< version> 2.4.3< / version>
<配置>
< skip> true< / skip>
< / configuration>
< / plugin>
< / plugins>
< / build>
< / profile>
< / profiles>
在pom.xml中描述了Hibernate OGM和mongoDB的依赖关系。
以下是jboss-deployment-structure.xml的配置:
< deployment> ;
<依赖关系>
< module name =org.hibernateslot =ogmservices =import/>
< module name =org.hibernate.ogm.mongodbservices =import/>
< module name =org.hibernate.search.ormservices =import/>
< /依赖关系>
< / deployment>
以下是persistence.xml的配置
<?xml version =1.0encoding =UTF-8?>
< persistence xmlns =http://java.sun.com/xml/ns/persistence
xmlns:xsi =http://www.w3.org/2001/XMLSchema-instance
xsi:schemaLocation =http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd
version = 2.0 >
< persistence-unit name =brx-plataformatransaction-type =JTA>
< provider> org.hibernate.ogm.jpa.HibernateOgmPersistence< / provider>
<! - Cadastro de usuario - >
< class> br.com.brx.plataforma.cadastro.usuario.entity.Pessoa< / class>
< class> br.com.brx.plataforma.cadastro.usuario.entity.PessoaFisica< / class>
< class> br.com.brx.plataforma.cadastro.usuario.entity.PessoaJuridica< / class>
< class> br.com.brx.plataforma.cadastro.usuario.entity.Usuario< / class>
<属性>
< property name =hibernate.transaction.jta.platformvalue =org.hibernate.service.jta.platform.internal.JBossAppServerJtaPlatform/>
< property name =hibernate.ogm.datastore.providervalue =MONGODB/>
< property name =hibernate.ogm.datastore.databasevalue =brxdb/>
< property name =hibernate.ogm.datastore.hostvalue =localhost/>
< property name =hibernate.ogm.datastore.portvalue =27017/>
< / properties>
< / persistence-unit>
我使用的是wildfly-10.1.0.Final,里面有模块文件夹.. 。我想知道如何进行......是否有必要在正确的服务器中放置一些模块?但我试过了,我不知道我是否在文件夹结构中出错。
感谢您的帮助
< module name =org.hibernateslot =ogmservices =import/>
with
< module name =org.hibernate.ogmslot =mainservices =import/>
如果您拥有 WILDFLY_HOME / modules / org下的ogm模块, /休眠/ OGM /主
。如果你没有他们,你可以从Maven Central存储库下载它们。
I'm looking for a help to configure Wildfly 10 with Hibernate OGM and MongoDB ... I have the following error:
11:13:17,164 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-4) MSC000001: Failed to start service jboss.module.service."deployment.brx-plataforma.war".main: org.jboss.msc.service.StartException in service jboss.module.service."deployment.brx-plataforma.war".main: WFLYSRV0179: Failed to load module: deployment.brx-plataforma.war:main
at org.jboss.as.server.moduleservice.ModuleLoadService.start(ModuleLoadService.java:91)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.jboss.modules.ModuleNotFoundException: org.hibernate:ogm
at org.jboss.modules.Module.addPaths(Module.java:1093)
at org.jboss.modules.Module.link(Module.java:1449)
at org.jboss.modules.Module.relinkIfNecessary(Module.java:1477)
at org.jboss.modules.ModuleLoader.loadModule(ModuleLoader.java:225)
at org.jboss.as.server.moduleservice.ModuleLoadService.start(ModuleLoadService.java:68)
... 5 more
11:13:17,192 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("deploy") failed - address: ([("deployment" => "brx-plataforma.war")]) - failure description: {
"WFLYCTL0080: Failed services" => {"jboss.module.service.\"deployment.brx-plataforma.war\".main" => "org.jboss.msc.service.StartException in service jboss.module.service.\"deployment.brx-plataforma.war\".main: WFLYSRV0179: Failed to load module: deployment.brx-plataforma.war:main
Caused by: org.jboss.modules.ModuleNotFoundException: org.hibernate:ogm"},
"WFLYCTL0412: Required services that are not installed:" => ["jboss.module.service.\"deployment.brx-plataforma.war\".main"],
"WFLYCTL0180: Services with missing/unavailable dependencies" => undefined
}
There is no Hibernate OGM module for mongoDB, in fact there is no OGM module
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>br.com.brx</groupId>
<artifactId>brx-plataforma</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<name>brx-plataforma</name>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<version.jboss.bom>10.0.0.Final</version.jboss.bom>
</properties>
<dependencyManagement>
<dependencies>
<!-- Configuracao tools jboss -->
<dependency>
<groupId>org.wildfly.bom</groupId>
<artifactId>wildfly-javaee7-with-tools</artifactId>
<version>${version.jboss.bom}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!-- Hibernate OGM - MongoDB -->
<dependency>
<groupId>org.hibernate.ogm</groupId>
<artifactId>hibernate-ogm-bom</artifactId>
<version>5.0.4.Final</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<!-- CDI -->
<dependency>
<groupId>javax.enterprise</groupId>
<artifactId>cdi-api</artifactId>
<scope>provided</scope>
</dependency>
<!--Jboss annotation -->
<dependency>
<groupId>org.jboss.spec.javax.annotation</groupId>
<artifactId>jboss-annotations-api_1.2_spec</artifactId>
<scope>provided</scope>
</dependency>
<!--JAX-RS -->
<dependency>
<groupId>org.jboss.spec.javax.ws.rs</groupId>
<artifactId>jboss-jaxrs-api_2.0_spec</artifactId>
<scope>provided</scope>
</dependency>
<!--JPA -->
<dependency>
<groupId>org.hibernate.javax.persistence</groupId>
<artifactId>hibernate-jpa-2.1-api</artifactId>
<scope>provided</scope>
</dependency>
<!--EJB -->
<dependency>
<groupId>org.jboss.spec.javax.ejb</groupId>
<artifactId>jboss-ejb-api_3.2_spec</artifactId>
<scope>provided</scope>
</dependency>
<!--JUnit -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<!-- Hibernate OGM - MongoDB -->
<dependency>
<groupId>org.hibernate.ogm</groupId>
<artifactId>hibernate-ogm-mongodb</artifactId>
</dependency>
</dependencies>
<build>
<!-- Maven - Java 8 -->
<finalName>${project.artifactId}</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.wildfly.plugins</groupId>
<artifactId>wildfly-maven-plugin</artifactId>
<version>1.0.2.Final</version>
</plugin>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>2.1.1</version>
<configuration>
<!-- Java EE 6 doesn't require web.xml, Maven needs to catch up! -->
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-ear-plugin</artifactId>
<version>2.8</version>
<configuration>
<version>6</version>
<defaultLibBundleDir>lib</defaultLibBundleDir>
</configuration>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>default</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<build>
<plugins>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.4.3</version>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
In pom.xml the dependencies of Hibernate OGM and mongoDB are described.
The following is also the configuration of jboss-deployment-structure.xml:
<deployment>
<dependencies>
<module name="org.hibernate" slot="ogm" services="import" />
<module name="org.hibernate.ogm.mongodb" services="import" />
<module name="org.hibernate.search.orm" services="import" />
</dependencies>
</deployment>
The following is also the configuration of persistence.xml
<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"
version="2.0">
<persistence-unit name="brx-plataforma" transaction-type="JTA">
<provider>org.hibernate.ogm.jpa.HibernateOgmPersistence</provider>
<!-- Cadastro de usuario -->
<class>br.com.brx.plataforma.cadastro.usuario.entity.Pessoa</class>
<class>br.com.brx.plataforma.cadastro.usuario.entity.PessoaFisica</class>
<class>br.com.brx.plataforma.cadastro.usuario.entity.PessoaJuridica</class>
<class>br.com.brx.plataforma.cadastro.usuario.entity.Usuario</class>
<properties>
<property name="hibernate.transaction.jta.platform" value="org.hibernate.service.jta.platform.internal.JBossAppServerJtaPlatform" />
<property name="hibernate.ogm.datastore.provider" value="MONGODB"/>
<property name="hibernate.ogm.datastore.database" value="brxdb"/>
<property name="hibernate.ogm.datastore.host" value="localhost"/>
<property name="hibernate.ogm.datastore.port" value="27017"/>
</properties>
</persistence-unit>
I'm using wildfly-10.1.0.Final and inside it there is the modules folder ... I would like to know how to proceed ... is it necessary to put some module inside the right server? But I've tried, I do not know if I'm going wrong in the folder structure.
thanks for the help
In your jboss-deployment-structure.xml replace:
<module name="org.hibernate" slot="ogm" services="import" />
with
<module name="org.hibernate.ogm" slot="main" services="import" />
This should work if you have the ogm modules under WILDFLY_HOME/modules/org/hibernate/ogm/main
. If you don't have them, you can download them from the Maven Central repository.
这篇关于Hibernate模块错误OGM + MongoDB和Wildfly 10的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!