我有一个奇怪的问题。当我从数据库中的视图创建行时,它做得很好,并且显示得非常好。但有时它会检索重复的行,并且我添加相同重复行的任何行都会一次又一次地出现。但是,当我重新部署应用程序时,问题得到解决,并且行再次正确显示,直到条目再次崩溃导致同样的问题。我无法弄清楚发生了什么,因为没有错误。我正在使用 EJB 3.0、glassfish 3.1.1、JSF 2.0、EclipseLink 和 JavaDB。
这是我的持久代码:
@Override
@TransactionAttribute(TransactionAttributeType.REQUIRES_NEW)
public void create(Carrier carrier) {
em.persist(c.getObject());
em.flush();
}
}
这是我的检索代码:
o@Override
public List<CrpPaypoint> getPaypoints() {
Query q = em.createQuery("SELECT c FROM CrpPaypoint c ORDER BY c.levelOrder.levelOrder");
List<CrpPaypoint> list = q.getResultList();
return list;
}
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
<persistence-unit name="hrtestPU" transaction-type="JTA">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<jta-data-source>jdbc/hrdb</jta-data-source>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties>
<property name="eclipselink.ddl-generation" value="create-tables"/>
</properties>
</persistence-unit>