玩!框架与Ebean:PersistenceException

时间:2012-10-06 14:31:18

标签: java jpa web playframework-2.0 ebean

我有一个Topic课程,其范围为Model 创建表主题的第一条记录很好,但它无法创建另一条记录:

  

[PersistenceException:ERROR执行DML bindLog []错误[错误:   重复键值违反唯一约束“pk_topics”\ n详细信息:   密钥(id)=(1)已经存在。]]

当然在这一行发生了例外:

topic.save();

这很奇怪,因为:

  1. 之前没有问题。
  2. 属性id是使用注释@Id定义的,假设自动增量为下一个值,但我对重复ID
  3. 我该怎么做才能解决这个问题?

    班级Model(当然不是全部,只有相关内容)

    @Entity
    @Table (name = "topics")
    public class Topic extends Model {
    @Id
    public long id;
    public String title;
    public String content;
    @ManyToOne
    @JoinColumn(name = "forumId")
    public Forum forum;
    @ManyToOne
    @JoinColumn(name = "userId")
    public User user;
    public Date date;
    
    public static void create(Topic topic) {
        topic.save();
    }
    

1 个答案:

答案 0 :(得分:1)

我找到了解决方案。当我将id的访问修饰符更改回protected时,它再次起作用。很奇怪,但现在它完美无缺。

解释