问题标签 [guice-persist]
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.
guice - guice-persist 是否支持 @Finder 注释
Guice-persist 是基于 warp-persist 的,它有 finder 方法的概念。
http://code.google.com/p/google-guice/wiki/GuicePersist
是基于
http://code.google.com/p/warp-persist/
我可以看到在 guice-persist 中有一个 @Finder 注释,类似于 warp-persist 但没有文档。
java - Hibernate/JPA 在启动时未针对 DB 模式进行验证
由于某种原因,hibernate 没有捕捉到诸如将实体映射到不存在的表之类的问题。我的 persistence.xml 文件看起来像这样......
hibernate - 如何使用 Guice 将属性注入/解析到 XML 文件中以配置 persistence.xml 文件?
我正在使用 guice-persist,我想知道是否有任何可以将 Java 属性文件中的属性注入或解析器属性到 persistence.xml 文件中,就像我对 Spring 所做的那样。例如:
如果不是,我如何使用 guice-persist 库配置 EntityManager 以便从属性文件中注入此属性?
谢谢!
transactions - 如何使用 Guice 和 Jersey 在 GET 请求中配置只读事务?
我正在使用 Guice、Guice Persist、Hibernate 和 Jersey。我所有的资源方法都用@Transactional 注释,除了用@GET 注释的方法。这是配置每请求事务范围的正确方法吗?
jpa - 如何在 Wicket 1.5 中使用 Guice Persist (Guice 3.0)?
我想了解如何在 Wicket 1.5 中使用 Guice Persist (Guice 3.0)。
我找不到任何解释如何做到这一点的“hello world”类型的例子,如果你可以链接/提供这样一个很好的例子,并且很高兴地被接受为答案。
与此同时,我将尝试自己创建一个“hello world”类型的示例,随着我的进展将代码发布在这里。帮助使我的代码正常运行也将被接受为答案。
我建立了一个简单的 wicket 项目,非常类似于 Wicket 示例中的 'hello world' guice 示例,它使用 guice 进行依赖注入。我现在想扩展这个项目以使用 JPA 和 Guice Persist,而不是“Hello World”,我想从数据库中获取用户并显示其用户名。我正在尝试使用 Guice wiki 关于Guice persist的说明来实现这一点。
更新:所以,我有点让它工作了。在WebApplication.init()
我注入这样的 ServetModulegetComponentInstantiationListeners().add(new GuiceComponentInjector(this, new MyServletModule()));
时,我还在 web.xml 文件的顶部添加了 GuiceFilter,在 wickets 过滤器之前。
现在,当我运行应用程序时,一切正常,但我收到了关于使用不推荐使用的方法的警告。将进一步研究这一点。
警告:您正在尝试使用已弃用的 API(特别是尝试在急切创建的单例中 @Inject ServletContext。虽然我们允许这样做是为了向后兼容,但请注意,如果您有多个注入器(使用 ServletModule ) 在同一个 JVM 中运行。有关详细信息,请参阅 http://code.google.com/p/google-guice/wiki/Servlets上的 Guice 文档。
目录树
WicketApplication.java
主页.java
主页.html
MyServletModule.java
IService.java
JpaService.java
用户.java
web.xml
持久性.xml
pom.xml
entitymanager - 使用 guice-persist 自动清除会话
我正在使用一个在 tomcat 上运行 guice-servlet 并在 guice-persist 下休眠的环境。我遇到的问题是,当我在一个请求中使用 em.getReference() 时,加载的代理对象保留在 entitymanager 缓存中,并且可能出现在我希望从数据库中完全加载对象的另一个请求中。
我曾经在 EJB3 环境中使用休眠,这是默认行为。实体管理器缓存对于每个新请求都是清除的。guice-persist 为每个请求清除会话不是更安全的行为吗?或者至少将其作为 JpaPersistModule 的设置?
hibernate SessionImpl "autoClear" 中有一个特殊的标志,它负责 EJB3 行为。当 JpaPersistModule 创建新的实体管理器时,有什么方法可以启用该标志?
java - 如何提交当前的 guice-persist UnitOfWork?
我正在使用UnitOfWork
Guice-persist 在休眠之上的后台任务方法(由 Quartz 操作)。后台任务调用一个服务,该服务需要在其任务中间提交当前事务 - 并继续另一个事务。如何提交当前的 UnitOfWork 并创建一个新的?
该服务也由 Guice 管理,但它是一个单例,并且无法按原样访问调用UnitOfWork
者。
理想情况下,我不想更改服务签名。一种解决方法是让调用者将两个UnitOfWork
作为参数提供给foo()
,但这似乎有点被黑了。
编辑:为了方便未来的读者使用,这是我对 ColinD 给出的解决方案的实现,它非常符合要求:
hibernate - JPA2 + Hibernate + Guice-persist:版本行为
我使用 Hibernate 3.6 Final、Guice-persist 和 JPA2。
太好了,我已经配置好了所有东西,并且我的 bean 有一个@Version private Long version;
, 带有 getter 和 setter。
我已经用所有字段实现了equals和hashcode。
我的 dao 保存方法是:
但是,如果我这样做:
然后,如果我更改名称并再次尝试保存,我会收到“StaleObjectstateException 行已更新或删除...”...
我想知道我必须做什么才能让实体管理器在保存对象时更新版本......以及为什么坚持不这样做。
提前致谢。
gwt - Guice-Persist:尝试在关闭的 EntityManager 上执行操作
我有一个由 maven 管理的应用程序,它有两个模块:一个用于持久性,另一个用于 webapp 本身(gwt)。
我在持久性模块中的测试就像一个魅力,但是,在 webapp 中,当我多次执行相同的方法时,我得到了一个java.lang.IllegalStateException: Attempting to execute an operation on a closed EntityManager.
.
我使用 guice-persist 将实体管理器注入到我的 DAO 中,并且我所有的 DAO 方法都有@Transactional
注释。
在我的 webapp 中,我放了一个: public class ScuvServletModule extends ServletModule {
如果我删除PersistFilter
,它会工作,但会随机抛出 Transaction Closed 异常或类似的东西。
有什么帮助吗?
hibernate - Guice-Persist - “这个线程上的工作已经开始。看起来你已经调用了 UnitOfWork.begin() 两次,而在两者之间没有对 end() 进行平衡调用。”
我们的应用程序是一个广泛使用 Guice-Persist 和 Guice-Servlet 的 Java-GWT 应用程序。我们使用 Guice-Persist 的 session-per-HTTPRequest 功能从未遇到过问题,这与 Warp-persist 最初使用的功能相似。
根据文档,我们正在通过 PersistFilter 类过滤我们的 webapp。根据此处的 Guice 文档,我们的 persistence.xml 文件具有 transaction-type="RESOURCE_LOCAL" 。
现在由于某种奇怪的原因,我们的 PROD 环境显示错误
“这个线程上的工作已经开始。看起来你已经调用了 UnitOfWork.begin() 两次,而在两者之间没有对 end() 进行平衡调用。”
看起来 Guice-Persist 不支持嵌套工作单元的问题。关联
我们最近还从休眠 3.6.3.Final 迁移到了 4.1.4.Final。不确定他是否会与guice有某种不兼容...
在这一点上,我们完全不知道为什么会发生这种情况。