我有一个可嵌入的集合,我想在其中有一个自动生成的UUID字段。我正在使用hibernate ogm和mongoDB。我正在尝试以下代码,但它会导致以下异常:
@Embeddable
public class Attachment {
@Id
@GeneratedValue(generator = "uuid")
@GenericGenerator(name="uuid", strategy="uuid2")
private String attachmentId;
例外:
Caused by: org.hibernate.annotations.common.AssertionFailure: Declaring class is not found in the inheritance state hierarchy: com.xxx.yyy.zzz.model.Attachment
如果我删除了这个id字段,除了我的嵌入式文档中没有id之外,一切正常。有什么想法吗?
答案 0 :(得分:0)
我认为现在没有办法做你需要的事。
@GeneratedValue
,@GenericGenerator
和@Id
应该与实体一起使用,而不是嵌入式(据我所知)。
您可能需要在创建新的嵌入元素时手动生成新的UUID。