- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在尝试在具有大型对象模型(>200 个实体)的项目中使用 Hibernate Search (4.4.0)。其中,我只想索引几个实体;目前只有一个。我根据需要为实体添加了@Indexed、@DocumentId 和@Field 注释。
但是,当我部署我的工件并启动应用程序服务器时,对于位于相同的持久化单元,但与索引实体完全无关。
我不想为我不打算索引的实体主键指定自定义字段桥,因为这将需要很长时间才能在完整的对象模型上实现。
我的问题是:为什么会这样?有什么办法解决这个问题吗?
作为引用,完整的堆栈跟踪如下:
org.hibernate.search.SearchException: HSEARCH000135: Unable to guess FieldBridge for <field> in <type>
at org.jboss.as.jpa.service.PersistenceUnitServiceImpl$1.run(PersistenceUnitServiceImpl.java:100)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_21]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_21]
at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_21]
at org.jboss.threads.JBossThread.run(JBossThread.java:122)
Caused by: org.hibernate.search.SearchException: HSEARCH000135: Unable to guess FieldBridge for <field> in <type>
at org.hibernate.search.bridge.impl.BridgeFactory.guessType(BridgeFactory.java:432)
at org.hibernate.search.engine.metadata.impl.AnnotationMetadataProvider.checkDocumentId(AnnotationMetadataProvider.java:159)
at org.hibernate.search.engine.metadata.impl.AnnotationMetadataProvider.initializeMemberLevelAnnotations(AnnotationMetadataProvider.java:625)
at org.hibernate.search.engine.metadata.impl.AnnotationMetadataProvider.initializeClass(AnnotationMetadataProvider.java:338)
at org.hibernate.search.engine.metadata.impl.AnnotationMetadataProvider.getTypeMetadataFor(AnnotationMetadataProvider.java:118)
at org.hibernate.search.engine.spi.AbstractDocumentBuilder.<init>(AbstractDocumentBuilder.java:100)
at org.hibernate.search.engine.spi.DocumentBuilderContainedEntity.<init>(DocumentBuilderContainedEntity.java:62)
at org.hibernate.search.spi.SearchFactoryBuilder.initDocumentBuilders(SearchFactoryBuilder.java:342)
at org.hibernate.search.spi.SearchFactoryBuilder.buildNewSearchFactory(SearchFactoryBuilder.java:217)
at org.hibernate.search.spi.SearchFactoryBuilder.buildSearchFactory(SearchFactoryBuilder.java:141)
at org.hibernate.search.hcore.impl.HibernateSearchSessionFactoryObserver.sessionFactoryCreated(HibernateSearchSessionFactoryObserver.java:74)
at org.hibernate.internal.SessionFactoryObserverChain.sessionFactoryCreated(SessionFactoryObserverChain.java:52)
at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:558)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1746)
at org.hibernate.ejb.EntityManagerFactoryImpl.<init>(EntityManagerFactoryImpl.java:94)
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:905)
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:890)
at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFactory(HibernatePersistence.java:74)
at org.jboss.as.jpa.service.PersistenceUnitServiceImpl.createContainerEntityManagerFactory(PersistenceUnitServiceImpl.java:197)
at org.jboss.as.jpa.service.PersistenceUnitServiceImpl.access$500(PersistenceUnitServiceImpl.java:57)
at org.jboss.as.jpa.service.PersistenceUnitServiceImpl$1.run(PersistenceUnitServiceImpl.java:96)
... 4 more
最佳答案
所以这是一个错误 (https://hibernate.atlassian.net/browse/HSEARCH-1447),现在已经修复了很长时间。解决方案是至少使用 4.4.3.Final 版本的 Hibernate Search。
关于java - Hibernate Search 尝试猜测未索引实体的字段桥,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19711261/
我的问题在于处理大型 CSV 文件中的数据。 我正在寻找基于在该列中找到的值来确定(即猜测)该列的数据类型的最有效方法。我可能正在处理非常困惑的数据。因此,该算法应该具有一定的容错性。 这是一个例子:
我正在开发一个基于 map 的网络应用程序,我想为用户提供“使用当前位置”的功能 我可以轻松检查地理位置 api 的可用性,如下所示: if (navigator && navigator.geolo
我有一大组日期时间字符串,可以放心地假设它们的格式都相同。例如,我可能有一组日期“7/1/13 0:45”、“5/2/13 6:21”、“7/15/13 1:24”、“7/9/13 12” :41",
我正在尝试对是否可以接收 C2DM 消息进行最佳猜测。 我创建了一个应用程序,它依赖于在物理上无法访问时将信息推送到手机。我知道 C2DM 不能保证传递,但我至少想知道何时可以传递消息;如果不是,我们
我正在编写一个系统,以便用户可以编辑他发布的内容。简化它是一个存储在数据库中的文本区域/输入字段和一个检索它的页面。问题是,我认为编码不正确,因为字符串存储在数据库中,如“É”或其他东西(phpmya
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 8 年前。 Improve this qu
只是好奇,但匹配 Guid 的概率是多少? 从 SQL 服务器说一个 Guid:5AC7E650-CFC3-4534-803C-E7E5BBE29B3D 它是阶乘吗?:(36 * 32)! = (11
这个问题已经有答案了: Guessing algorithm does not seem to work, guessing number by Python (3 个回答) 已关闭 5 年前。 程序
我正在创建一个非常简单的计算器,但我需要它在每次击键时进行更新。我似乎找不到该特定类别中的任何内容。有人能指出我正确的方向吗? 我正在寻找类似 A*1.325 + B*3.76 的内容,其中 B 是下
环顾四周this似乎是最接近我的问题的答案。然而它会导致其他问题...... 这是我的情况: $element.insertBefore($container); 此行有一个警告,指出 insertB
当我收到此页面时 http://booking.airasia.com/css/AKBase/Cultures/en-GB/far-min.css与 Node 的 http , toString方法给
我在代码中发现了这一点,但不知道哪个实例接收到。 var guess = require ('myModule1') ('myMmodule2') 最佳答案 看来 myModule1 导出了一个函数,
WARNING: No name was provided for external module 'moment' in output.globals – guessing 'momentImpor
我是一名优秀的程序员,十分优秀!