- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
最近我正在将一个简单的 Grails 应用程序与 Searchable 插件集成。我发现 Searchable 插件不适用于 Hibernate 4 库。
在这里您可以找到一个示例应用程序,它仅包含干净的 Grails 2.4 应用程序,并且仅添加了 Searchable 插件 - https://github.com/wololock/grails-searchable-example
当我运行这个应用程序时:
runtime ":hibernate4:4.3.5.5"
ClassNotFoundException: org.hibernate.impl.SessionFactoryImpl
2014-10-11 19:41:58,142 [localhost-startStop-1] ERROR context.GrailsContextLoaderListener - Error initializing the application: org/hibernate/impl/SessionFactoryImpl
Message: org/hibernate/impl/SessionFactoryImpl
Line | Method
->> 95 | injectLifecycle in org.compass.gps.device.hibernate.lifecycle.DefaultHibernateEntityLifecycleInjector
runtime ":hibernate:3.6.10.17"
cache.region.factory_class = 'net.sf.ehcache.hibernate.EhCacheRegionFactory'
最佳答案
Hiberate 3.x 和 4.x 之间有几个包名和类名更改,因此适用于 Hibernate 3.x 的代码将不适用于 4.x,除非在极少数情况下。除了名称更改之外,内部工作方式也发生了很大变化,因此编译的代码不一定会运行。应用程序选项 #1 是降级到 Hibernate 3.x。包含并注释掉的配置设置(BuildConfig.groovy、DataSource.groovy),所以这是一个非常快速的选项。如果您依赖于 4.x 中添加的功能,显然不是一个选项,这只会延迟真正的问题,直到您必须升级 Hibernate。
所有使用 Hibernate 3 的插件都需要更新以支持 Hibernate 4,或者作为替代品,或者在理想情况下使用一些交叉编译技巧或其他 3rd 方库同时支持两者。假设用户最终将从 3.x 升级的一个插件选项是创建一个 3.x 分支并为 Hibernate 4 启动插件的新主要修订版(在 master 分支中)并进行更改以使其在 4 中工作。 X。使用 3.x 分支来支持安全更新和非常小的问题,但不要添加新功能。许多插件作者可能会走这条路。
在某些情况下,另一种选择是最有意义的——什么都不做。这适用于可搜索。可搜索的用途 http://www.compass-project.org/这实际上已经死了 - 它的最后一个版本是 4 年前。 Shay Banon 现在是 http://www.elasticsearch.org/ 的首席技术官我相信 Shay 停止了 Compass 的工作并开始使用 Elasticsearch,因为将 Compass 扩展到单个服务器之外是不切实际的。可以将 Lucene 索引存储在数据库中,但这确实为您提供了一个集中式单个写入器和一个或多个(使用 db 集群或类似的)集中式读取器、具有自定义协议(protocol)等的优化搜索服务器等。更有意义。
还有Solr共识似乎是首选 Elasticsearch。 Solr Grails 插件 3 年未更新,Elasticsearch plugin也开始发霉了,但最近 Noam Tenne 接任插件负责人并做了很多出色的工作,他在过去几个月里发布了几个版本。请注意旧的 elasticsearch
和 elasticsearch-gorm
插件被合并和更新以创建新的 elasticsearch
插入。
另一个选择是使用 Hibernate 自己的产品 Hibernate Search .有a plugin for that但它自 2012 年以来一直没有更新。自私地这是我个人对你的偏好 - 选择此选项,接管插件(假设原作者的肯定回复或没有回复)并更新它以与最新的 Hibernate 4 兼容.x 插件。这将为我们提供 Elasticsearch 的一个很好的替代方案。
除此之外,我认为 Elasticsearch 是您的最佳选择。
关于hibernate - Grails 2.4 + Hibernate 4 + 可搜索插件 = ClassNotFoundException : org. hibernate.impl.SessionFactoryImpl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26317599/
我的转储中有大约 15,000 个相同的 SessionFactoryImpl 对象: 具有传入引用的对象之一: 具有出站引用的对象之一: 我没有配置以下参数,它们是默认设置的: hibernate.
我想将来自 postgres JDBC 的 CopyManager 用于我的一个项目。但是,我在从 Grails 项目中的 sessionFactory 获取此对象的实例时遇到问题。 这是我目前的做法
此行抛出根植于 SessionFactoryImpl#getReturnTypes 方法的 NPE: Query q = em.createQuery("DELETE FROM Table t
我正在使用 Spring/Hibernate 开发一个 Web 应用程序,经过几天的生产,它变得非常慢,所以我使用 visualvm 进行了堆转储,但我不太了解如何分析结果,我什至不知道在类似的开发堆
继续求解this problem ,我使用 MAT 发现了几个“org.hibernate.impl.SessionFactoryImpl”内存泄漏: 54 instances of "org.hib
我已经用 Java 制作了 MVC webapp,但是当我每天运行一次时,由于内存错误,它再次关闭。 这个错误是这样的:线程“http-apr-12136-exec-42”中的异常 java.lang
甚至不确定如何表达这一点,因为我不确定什么是空的。 我有一个像这样配置的 hbm.xml 文件: ` reser
下面是我的代码..我应用了Spring框架和hibernate JPA,除了一个保存它的函数之外,我的所有代码都可以工作..在其他类似的代码中,Makanan实体的服务工作得很好..我不知道在哪里错误
我们使用 Spring ORM 4.2.1.RELEASE 通过 JPA 与 Hibernate 进行交互。 Hibernate 4.3.11.Final 一切正常,但是当我们尝试升级到 Hibern
我正在处理一个多模块 gradle 项目(12 个模块)。我继承了该项目,需要更新其中使用的一些库的版本。 我正在尝试切换到使用 hibernate-core 版本 5.4.10.Final。我无法理
我每次使用 Hibernate 更新实体时都会出错。这是我的故事: 我有一个带有注解@Transactional 的服务,并且正在调用 DAO.update 方法。 @Service @Transac
最近,我将我的 hibernate 更新到版本 5.2.1.Final(目前最新),将 spring 框架更新到 4.3.0.RELEASE。当我在类 StartUp 中启动应用程序时 @Servic
最近我正在将一个简单的 Grails 应用程序与 Searchable 插件集成。我发现 Searchable 插件不适用于 Hibernate 4 库。 在这里您可以找到一个示例应用程序,它仅包含干
我有一个非常简单的 Spring Boot 1.3 应用程序,我正在尝试升级到 1.4 RC1。没有什么不是开箱即用的配置。当我尝试启动应用程序或运行测试时,我得到以下信息: 12:06:27.237
我是一名优秀的程序员,十分优秀!