org.hibernate.AnnotationException: @Column(s) not allowed on a @ManyToOne property: entity.KpsysLog.usert
at org.hibernate.cfg.AnnotationBinder.processElementAnnotations(AnnotationBinder.java:1581)
at org.hibernate.cfg.AnnotationBinder.processIdPropertiesIfNotAlready(AnnotationBinder.java:796)
at org.hibernate.cfg.AnnotationBinder.bindClass(AnnotationBinder.java:707)
at org.hibernate.cfg.Configuration$MetadataSourceQueue.processAnnotatedClassesQueue(Configuration.java:4035)
at org.hibernate.cfg.Configuration$MetadataSourceQueue.processMetadata(Configuration.java:3989)
at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1398)
at org.hibernate.cfg.Configuration.buildMappings(Configuration.java:1375)
at org.hibernate.ejb.Ejb3Configuration.buildMappings(Ejb3Configuration.java:1226)
at org.hibernate.ejb.EventListenerConfigurator.configure(EventListenerConfigurator.java:173)
at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:854)
at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:191)
at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:253)
... 71 more
解决方法
第一步:
在依赖的类user_table加上一段代码:
@OneToMany(cascade={CascadeType.REMOVE},fetch=FetchType.EAGER,mappedBy="user_table")
@OrderBy("account ASC")
private Set<KpsysLog> kpsyslog;(省略该属性的getter和setter方法)
第二步:
hibernate-jpa-2.0-api-1.0.1.Final,jar包和ejb-persistence.jar包冲突,将ejb-persistence.jar包删掉