Play Framework OneTone удалить ссылочную целостность - PullRequest
0 голосов
/ 30 октября 2011

Я получаю нарушение ограничения ссылочной целостности для теста JUnit. Использование playframework и мои две сущности заключаются в следующем.

@Entity
public class User extends Model{

public String email;
public String password;

@OneToOne(mappedBy="user",cascade=CascadeType.ALL)
public Patent patent;

}


@Entity
public class Patent extends Model{


    @OneToOne
    public User user;


}

В моем тесте Junit следующая строка не проходит

User.findById(user.id)._delete();


Referential integrity constraint violation: "FK340C82E547140EFE: PUBLIC.PATENT FOREIGN KEY(USER_ID) REFERENCES PUBLIC.USER(ID)"; SQL statement:
delete from User where id=? [23003-149]

Спасибо

1 Ответ

0 голосов
/ 31 октября 2011

Вы должны использовать только одну аннотацию @OneToOne на владельца отношения. В вашем случае пользователь владеет патентом, поэтому вы можете удалить из вашей Патентной организации следующее:


    @OneToOne
    public User user;

Попробуйте снова удалить.

...