2012-01-21 25 views
5

ben @Embeddable ek açıklama ı org.hibernate.MappingException: Type not supported for auditing: org.hibernate.type.ComponentTypeJPA @Embeddable

alıyorum kullanırsanız bu

//@Embeddable 
@Table(name = "choice") 
@Cacheable(false) 
@Audited 
public class Choice implements Serializable{ 

gibi bir Seçenek sınıfı oluşturduk

@ElementCollection 
@CollectionTable(name = "choice", joinColumns = @JoinColumn(name = "itemId")) 
@OrderColumn(name = "index") 
private List<Choice> choices = new ArrayList<Choice>(); 

özel nesne listesi için @ElementCollection kullanıyorum

JPA'da yeniyim. Kaybettiğim bir şey var mı?

+0

Neyi anlamıyorsunuz? Mesaj oldukça açık: Bir bileşeni/gömülebilirliği denetleyemezsiniz. Gerçek bir varlık yap. –

cevap

5

@Embeddable kullanmak isterseniz, @Embeddable sınıfına başvuran alanın @Embedded ek açıklamasına sahip olması gerekir. Ardından, @Embedded sınıfındaki alanların JPA ek açıklamalarına sahip olması gerekir, böylece JPA bunlarla ne yapacağını bilir. @Embbedable'un ne yaptığını tam olarak anlamak için this'u okumak isteyebilirsiniz.

+0

Düzenleme için teşekkürler. Bir geri alıntı kullanarak biçimlendirmeyi yapabileceğimin farkında değildim. – Christine