Java GWT Gilead(JPA配置)
从官方网站: 请注意,您仍然必须使用正确初始化PersistentBeanManager 关联的PersistenceUtil,代理 存储和可能的类映射器。这 必须在任何远程调用之前完成, 在远程服务构造函数中或在 继承的“init”方法(不要忘记 要调用super.init()!):Java GWT Gilead(JPA配置),java,gwt,jpa,gilead,Java,Gwt,Jpa,Gilead,从官方网站: 请注意,您仍然必须使用正确初始化PersistentBeanManager 关联的PersistenceUtil,代理 存储和可能的类映射器。这 必须在任何远程调用之前完成, 在远程服务构造函数中或在 继承的“init”方法(不要忘记 要调用super.init()!): 我使用JPA,我必须做些不同的事情吗?如果您将JPA与Hibernate一起使用,您可以像这样使用HibernateJpaUtil: String PERSISTENCE_UNIT_NAME = "..."; E
我使用JPA,我必须做些不同的事情吗?如果您将JPA与Hibernate一起使用,您可以像这样使用
HibernateJpaUtil
:
String PERSISTENCE_UNIT_NAME = "...";
EntityManagerFactory emf =
Persistence.createEntityManagerFactory(PERSISTENCE_UNIT_NAME);
HibernateJpaUtil hibernateJpaUtil = new HibernateJpaUtil();
hibernateJpaUtil.setEntityManagerFactory(emf);
PersistentBeanManager persistentBeanManager =
GwtConfigurationHelper.initGwtStatelessBeanManager(hibernateJpaUtil);
setBeanManager(persistentBeanManager);
如果您将JPA与Hibernate以外的另一个实现一起使用,那么您目前可能运气不佳,或者您必须自己实现IPersistenceUtil
:
即使Hibernate是目前唯一受支持的,OpenJPA和EclipseLink的支持也是有计划的
事实上,Gilead在很久以前,即GAE/J发布后不久,就包含了对DataNucleus的更改。@DataNucleus:我不确定,你是说:?()@Chris I向Bruno提供了所有必要的信息,他报告说已经在他的案例中充分使用了这些信息,所以是的,将“可分离”字节码增强类传递给GWT应该是非常好的(对于DataNucleus的早期版本)。显然,人们可以毫无问题地将不可分离的字节码增强类传递到GWT(没有Gilead),所以您建议将提供程序从Hibernate更改为DataNucleus吗?@kostas我没有任何建议。这是你的应用程序,你对你的技术选择负责。我只是简单地指出,DataNucleus还可以与带/不带Gilead的GWT一起使用。
String PERSISTENCE_UNIT_NAME = "...";
EntityManagerFactory emf =
Persistence.createEntityManagerFactory(PERSISTENCE_UNIT_NAME);
HibernateJpaUtil hibernateJpaUtil = new HibernateJpaUtil();
hibernateJpaUtil.setEntityManagerFactory(emf);
PersistentBeanManager persistentBeanManager =
GwtConfigurationHelper.initGwtStatelessBeanManager(hibernateJpaUtil);
setBeanManager(persistentBeanManager);