问题标签 [hibernate-ogm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
152 浏览

infinispan - jpa-store 和休眠 OGM

问题:尝试使用 jpa-store 和休眠 OGM 配置 infinspan 缓存。我可以通过带有简单缓存存储的 hotrod 客户端访问 infinispan 服务器缓存,配置如下,

我在 ..\infinispan-server-8.1.0.CR1\standalone\configuration\standalone.xml 中配置了以下内容,并通过命令 ../bin>standalone.bat 运行服务器

引起:javax.xml.stream.XMLStreamException: WFLYCTL0198: 在 org.jboss.as.controller.parsing.ParseUtils.unexpectedElement(ParseUtils.java:89 遇到意外的元素'{urn:infinispan:server:core:8.1}persistence' ) 在 org.jboss.as.clustering.infinispan.subsystem.InfinispanSubsystemXMLReader.parseLocalCache(InfinispanSubsystemXMLReader.java:706) 在 org.jboss.as.clustering.infinispan.subsystem.InfinispanSubsystemXMLReader.parseCacheElement(InfinispanSubsystemXMLReader.java:971)。 jboss.as.clustering.infinispan.subsystem.InfinispanSubsystemXMLReader.parseContainer(InfinispanSubsystemXMLReader.java:247) at org.jboss.as.clustering.infinispan.subsystem.InfinispanSubsystemXMLReader.readElement(InfinispanSubsystemXMLReader.java:97) at org.jboss.as.clustering.infinispan.subsystem.InfinispanSubsystemXMLReader.readElement(InfinispanSubsystemXMLReader.java:70) at org.jboss.staxmapper.XMLMapperImpl.processNested(XMLMapperImpl.java:110) at org.jboss.staxmapper.XMLExtendedStreamReaderImpl.handleAny(XMLExtendedStreamReaderImpl. java:69) 在 org.jboss.as.server.parsing.StandaloneXml_4.readServerElement(StandaloneXml_4.java:244) 在 org.jboss. .as.server.parsing.StandaloneXml_4.readElement(StandaloneXml_4.java:143) 在 org.jboss.as.server.parsing.StandaloneXml.readElement(StandaloneXml.java:69) 在 org.jboss.as.server.parsing.StandaloneXml .readElement(StandaloneXml.java:47) 在 org.jboss.staxmapper.XMLMapperImpl.processNested(XMLMapperImpl.java:110) 在 org.jboss.staxmapper.XMLMapperImpl.parseDocument(XMLMapperImpl.java:69) 在 org.jboss.as.controller.persistence.XmlConfigurationPersister.load(XmlConfigurationPersister.java: 123) ... 还有 3 个

  1. 如何在 infinispan 服务器(Jboss)中自动部署项目(定制的 infinispan 管理器类(java 类)、persistence.xml 和 infinispan-config.xml)?
0 投票
1 回答
125 浏览

java - NativeQuery 或 HibernateOGM 方法更好

我正在使用休眠 OGM 与我的 MongoDB 实例对话。我必须得到一个包含 category 的所有产品的列表"abc"。我正在使用本机查询方法来实现这一点,如下所示:

我不确定这是否是正确的方法,因为我看到了太多的硬编码(查看集合名称)。我可以使用该.find()方法来实现相同的目标吗?我们使用带有 gradle 的 vertx 服务器作为构建工具。

0 投票
1 回答
133 浏览

mongodb - 从 ORM 和 OGM 获取休眠持久性单元类

我试图在同一个应用程序中同时使用休眠的 orm 和 ogm 。在我的persistence.xml我有两个persistence-unit

我想将休眠 orm 本机 api 与 orm 和 ogm 一起使用,因此我需要将带注释的类添加到两个不同的MetadataSources.
由于我有持久性单元,我认为我可以这样做:

问题是,在 orm 类的第一次迭代中,我得到了包含在orm-mysqland中的 orm 和 ogm 类ogm-mongo
但是第二次很好,我只得到了ogm-mongo课程。

无法弄清楚什么是错的,有什么想法吗?

0 投票
1 回答
193 浏览

mongodb - 每个带有 Hibernate OGM 和 mongodb 的具体类的表

我正在使用 mongodb 来存储 json 文档,并且由于我将 Hibernate ORM 用于我的关系模型,因此我决定将 OGM 用于 mongo 模型。

目前我所有的 OGM 实体共享同一个父类,它看起来像:

(当然是简化的)

当我持久化一个Person实例时,我预计会在数据库中创建两个集合,一个 for Person,另一个 for Address,我推断:

Hibernate OGM 不支持各种继承策略,仅使用每个具体类策略的表

支持的实体映射 - Hibernate OGM 文档

但实际发生的情况是,只创建了一个集合,其中Document包含两个文档的名称:

我错过了什么?
谢谢

0 投票
1 回答
293 浏览

mongodb - 使用 Hibernate OGM 和 mongodb 的实体中缺少集合

无论是简单的集合还是关联,我的实体中的集合都不会持久化。
我正在将 OGM 与 mongodb 一起使用。

对于问题的示例,请考虑以下实体:

以下设置:

这个简短的程序:

现在testdb包含 3 个集合DocumentChildDocumentParentDocument

  • 这些ChildDocument文件是正确的,因为它们只需要具有_idname
  • Document文档也只包含_idand ,name缺少names集合
  • ParentDocument仅在and_id中保留,count但即使ChildDocuments创建了对孩子的引用也丢失了

我究竟做错了什么?
谢谢

0 投票
0 回答
2631 浏览

spring - IllegalArgumentException:不是托管类型

我正在将 Spring Data 与 Hibernate 和 mongo db 一起使用。我在尝试将我的 web 应用程序部署到 Wildfly 10 时遇到以下堆栈。

引起:java.lang.IllegalArgumentException:不是托管类型:org.hibernate.jpa.internal.metamodel.MetamodelImpl.managedType(MetamodelImpl.java:219) 的类 com.olp.jpa.domain.docu.product.ProductTemplateBean在 org.springframework.data.jpa.repository.support.JpaMetamodelEntityInformation.(JpaMetamodelEntityInformation.java:68) 在 org.springframework.data.jpa.repository.support.JpaEntityInformationSupport.getMetadata(JpaEntityInformationSupport.java:65) 在 org.springframework。 data.jpa.repository.support.JpaRepositoryFactory.getEntityInformation(JpaRepositoryFactory.java:149) 在 org.springframework.data.jpa.repository.support.JpaRepositoryFactory.getTargetRepository(JpaRepositoryFactory.java:88) 在 org.springframework.data.jpa。 repository.support.JpaRepositoryFactory。getTargetRepository(JpaRepositoryFactory.java:68) at org.springframework.data.repository.core.support.RepositoryFactorySupport.getRepository(RepositoryFactorySupport.java:159) at org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport.initAndReturn(RepositoryFactoryBeanSupport. java:224) 在 org.springframework.data.jpa.repository.support.JpaRepositoryFactoryBean.afterPropertiesSet(JpaRepositoryFactoryBean.java:92) 在 org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport.afterPropertiesSet(RepositoryFactoryBeanSupport.java:210)在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory 的 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1637)。initializeBean(AbstractAutowireCapableBeanFactory.java:1574) ... 还有 35 个


使用 SpringJUnit4ClassRunner 在 Junit 中测试时,代码运行良好。只有在 Wildfly 部署期间,我才会收到此错误。以下各种工件的片段:

  1. web.xml

    http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd">

  2. 弹簧配置

    http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx。 xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/jdbc http:// www.springframework.org/schema/jdbc/spring-jdbc.xsd http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa。 xsd "

  3. JPA 配置 (persistence_olp.xml)

    http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"> org.hibernate.ogm.jpa.HibernateOgmPersistence ENABLE_SELECTIVE

  4. 实体抛出异常 (ProductTemplateBean.java)

    包 com.olp.jpa.domain.docu.product;

    @Entity @Table(name="phub_product_template") 公共类 ProductTemplateBean 实现可序列化 {

    }

  5. Wildfly 类加载器配置 (jboss-deployment-structure.xml)

如果有人可以提出一些指示,我将不胜感激。我已经阅读了一些相关文章,其中大部分都指向“packagesToScan”属性。这已经正确配置。

头疼了好久!在此先感谢您提供的任何帮助。

0 投票
1 回答
146 浏览

java - 用于 MongoDB 负载平衡的 Hibernate 配置

我有一个带有 3 个节点的小型 mongoDB 集群(没有分片,只有复制)。现在插入主节点正在按预期将新数据传播到辅助节点(基本复制)。我正在使用 java 和休眠。

现在我想要的是在整个副本集中对读取请求进行负载平衡,而不是始终使用主节点来提供数据。有什么方法可以告诉休眠(通过查询字符串)可用的服务器,并以某种方式休眠分发请求(随机或以系统方式)?实现负载平衡的正确方法是什么?

0 投票
1 回答
501 浏览

hibernate - 休眠 OGM Neo4j (5.0) Wildfly 10 错误。提供者 org.hibernate.ogm.service.impl.OgmIntegrator 不是子类型

部署 ear 时出现此错误。

我的持久性 xml 是

任何人都可以请什么问题?. 我也尝试删除 JTA 提供程序。

Wildfly - 10.0 JPA -2.1 Java - 8 Hibernate - 5.0.0.Beta1

0 投票
1 回答
1928 浏览

java - 用Java将流写入mongoDB

我有一个文件要存储在 mongoDB 中。我想要的是避免加载整个文件(可能是几 MB 大小),而是我想打开流并将其定向到 mongoDB 以保持写入操作的性能。我不介意将内容存储在 base64 编码的字节 [] 中。

之后我想在读取文件时做同样的事情,即不要将整个文件加载到内存中,而是在流中读取它。

我目前正在将 hibernate-ogm 与 Vertx 服务器一起使用,但如果它有效地解决了问题,我愿意切换到不同的 api。

我想实际存储一个包含多个字段和多个附件的文档。

0 投票
1 回答
532 浏览

java - 使用休眠 OGM 为 mongoDB 启用 SSL

我正在使用休眠 OGM 与 mongoDB 进行交互。作为业务需求的一部分,我需要启用sslmongodb 和我的 java 应用程序之间的通信。

我在 mongodb 文档中看到使用 mongodb-java-driver,就像在连接字符串中将 ssl 标志设置为 true 一样简单。我怎么能在休眠状态下做到这一点?

===== 更新基于唯一给出的答案 ======

Hibernate OGM 4.2 版使用 mongodb Java 驱动程序 2.13 版,它不包括 MongoClientOptions.Builder 类中的 ssl 属性。我无法升级 hibernateOGM 版本,因为它仍然是 beta 或 alpha。我尝试显式升级 java 驱动程序版本,但随后开始出现异常java.lang.NoClassDefFoundError: Could not initialize class org.hibernate.ogm.datastore.mongodb.options.impl.WriteConcernOption

======== 更新 2 ===============

我查看了 mongodb java 驱动程序文档,发现将socketFactory选项设置为SSLSocketFactory可能的技巧(请参阅https://docs.mongodb.org/v2.6/tutorial/configure-ssl-clients/#java)。但似乎休眠 OGM 4.2 没有选择以下属性来使用 SSLSocketFactory 来创建 mongo 客户端: hibernate.ogm.mongodb.driver.socketFactory=SSLSocketFactory