2011-10-07 33 views
4

我有一个整数id字段的简单对象为如下:通过JPA检索的对象的ID缺少

@Id 
@GeneratedValue(strategy = GenerationType.IDENTITY) 
@Column(unique = true, nullable = false) 
private int id; 

对象可以被正确地持续到数据库中。然而,通过从数据库中检索对象时:

EntityManagerFactory emFactory = Persistence.createEntityManagerFactory("MyService"); 
EntityManager entityManager = emFactory.createEntityManager(); 
MyObject myObject = entityManager.find(MyObject.class, 1); 
entityManager.close(); 

id字段一个检索的对象的值始终为零,但所有其他字段的值被正确检索。

如果我从代码中删除@Id注释,则可以像所有其他字段一样正确地检索id字段的值。

我正在使用OpenJPA和MS SQL Server 2008. MS MSSQLjdbc驱动程序和JTDS驱动程序都经过测试。

+0

看起来像一个bug给我 – Bozho

回答

3

这是一个known bug增强使用eclipse插件时。我强烈建议获取另一种构建时间的方法enhancement。欢迎向OpenJPA用户邮件列表发布其他问题。

+0

谢谢你,里克。答案很有帮助。 – KiKi