草庐IT

java - Persistence.xml 和 OSGi (Equinox)

我目前正在使用OSGi进行测试。我正在通过Eclipse运行它。我想让我的DAO层成为OSGi解决方案的一部分,但我的第一个绊脚石是这个错误:Jun29,20096:12:37PMorg.hibernate.cfg.annotations.VersionINFO:HibernateAnnotations3.3.0.GAJun29,20096:12:37PMorg.hibernate.ejb.VersionINFO:HibernateEntityManager3.3.0.GAJun29,20096:12:37PMorg.hibernate.ejb.Ejb3Configurationcon

java - 为什么我们需要在 <persistence-unit> 元素中指定类?

我的persistence.xml有2个持久性单元。他们每个人都有几个元素。我认为我们必须指定与某个持久性单元相关的所有类。但是我不小心忘记了为新实体指定类元素,但即使没有它,程序也能正常工作。然后我删除了所有类元素,一切正常。那么,我们为什么需要它?示例代码:chartdemo.model.domain.Category 最佳答案 如果您没有在persistence.xml文件中指定类,您的持久性管理器将管理persistence.xml文件所在位置(jar文件、类目录)中的所有实体类。列出类使您可以灵活地选择实体并将它们分组到持

java - openejb 嵌入式容器找不到 persistence.xml

我在嵌入式模式下使用openEjb来测试无状态sessionbean,它有一个注入(inject)的EntityManager。但是,当我运行测试时,它失败了,因为它无法初始化应用程序。当我看到控制台时,我还可以看到与无法找到persistence.xml有关的错误注意:我尝试将WebContent和META-INF放在类路径中,但这也无济于事。更新:在使用openejb+eclipse时,资源查找有一些非常奇怪的地方。我将WebContent添加到源文件夹。我不再收到persistence.xml错误,但现在我收到一个错误,表明openejb找不到任何托管资源我将WebContent

java - Hibernate/persistence 有哪些常见问题?

我有一个应用程序,我想针对与Hibernate和/或持久性相关的可能问题进行测试。还有什么问题?我如何复制它们(字面意思)?你如何从中恢复过来?明确一点:我说的是多线程集群环境(最复杂的一个)。我的:org.hibernate.StaleObjectStateException:行已被另一个事务更新或删除(或未保存的值映射不正确)复制:加载对象。使用HQL进行更新。尝试更新(保存)加载的对象。句柄:不确定... 最佳答案 延迟加载是您会遇到的大问题之一,尤其是当您遵循标准DAO模式时。你最终会得到惰性加载的集合,但是在你的DAO层出

java - EntityManager 不能使用 persist 将元素保存到数据库

我遇到了使用EntityManager将元素持久化到数据库的问题。根据我找到的答案,我在我的DaoJpa中尝试了这4种方法来做这样的事情,但仍然失败了。这里附上我尝试过的四种方式:Controller部分的代码:@TransactionalSmartProductsmartProduct=newSmartProduct();smartProduct.setName("DoveSoap");smartProductDao.persist(smartProduct);1.道杰帕:@Transactionalpublicvoidpersist(SmartProductsmartProduct

java - 交易不活跃 - hibernate - JPA

我有这个类专门用于通过hibernate的持久层将数据保存在数据库中。publicclassTLinkEquipementDAOImplimplementsTLinkEquipementDAO{privatestaticfinalLoglog=LogFactory.getLog(TLinkEquipementDAOImpl.class);@PersistenceContextprivateEntityManagerFactoryemf=PersistenceManager.getInstance().getEntityManagerFactory();privateEntityMana

java - 不活动 transaciotn : javax. persistence.TransactionRequiredException:执行更新/删除查询

为什么我的交易不活跃?我有这条消息:“javax.persistence.TransactionRequiredException:执行更新/删除查询”我找不到原因应用上下文:-->DAO实现@ComponentpublicclassUserDaoImplimplementsUserDao{@PersistenceContext(unitName="punit")privateEntityManagerem;protectedUserDaoImpl(){}//otherovverrideslikefind,get@Override@Transactionalpublicvoiddele

java - eclipse 链接 : No Persistence provider for EntityManager named

我想创建一个能够使用JavaPersistence的Bundle。为此,我在Eclipse中创建了一个插件项目。在我的项目中,我在META-INF中创建了一个persistence.xml文件。我已经在我的MANIFEST.mf中添加了这3个包(到依赖项中):javax.persistence.jarorg.eclipse.persistence.jarorg.eclipse.persistence.jar然后,在我的Activator中,我使用以下行创建一个EntityManager:factory=Persistence.createEntityManagerFactory(PER

java - JPA 类格式错误 "Absent Code attribute in method that is not native or abstract in class file javax/persistence/Persistence"

当我尝试调用100%工作代码时,我从eclipse中得到错误。例如,它在我的netbeans中工作,但不是这个eclipse项目。这个错误是荒谬的,我几乎可以肯定它是由我正在使用的OPENJPA的一些Maven依赖性引起的。任何指针?Mapproperties=newHashMap();properties.put(PersistenceUnitProperties.JDBC_PASSWORD,"");properties.put(PersistenceUnitProperties.JDBC_USER,"root");properties.put(PersistenceUnitProp

java - 为什么 JPA 使用 javax.persistence.NoResultException

javax.persistence.NoResultException的使用是否违反了Java异常使用的基本原则?不应该使用异常来控制程序的正常流程。从数据库查询返回零结果在我看来是非常标准(并非异常(exception))的情况。一个无论如何都将通过调用代码处理的问题。 最佳答案 请注意javadocforNoResultException状态:ThrownbythepersistenceproviderwhenQuery.getSingleResult()orTypedQuery.getSingleResult()isexecu