У меня очень простая проблема, и я не уверен, что это ошибка в спящем режиме или проблема с JPA 2.0.Hibernate Entity Невозможно определить тип отображения @ManyToOne в столбце @Id
У меня есть простой @Entity
@Entity
public class LegacyClearanceNodeMapping {
@Id
@ManyToOne
@JoinColumn(name="nid")
private LegacyNode clearanceNode;
@ManyToOne
@JoinColumn(name="rentable_nid")
private LegacyNode rentableNode;
@Column
private Integer quality;
..snip..
}
По сути, это многие-ко-многим класса карта, но она имеет мета-данные об ассоциации, поэтому я не могу относиться к нему таким образом.
При попытке запуска в спящем режиме, хотя, я получаю ошибку follwoing:
org.hibernate.MappingException: Could not determine type for:
com.***.inventory.model.clearance.LegacyNode, at table: LegacyClearanceNodeMapping, for columns: [org.hibernate.mapping.Column(clearanceNode)]
at org.hibernate.mapping.SimpleValue.getType(SimpleValue.java:292)
at org.hibernate.mapping.SimpleValue.createIdentifierGenerator(SimpleValue.java:175)
at org.hibernate.cfg.Configuration.iterateGenerators(Configuration.java:743)
at org.hibernate.cfg.Configuration.generateDropSchemaScript(Configuration.java:854)
at org.hibernate.tool.hbm2ddl.SchemaExport.<init>(SchemaExport.java:128)
at org.hibernate.tool.hbm2ddl.SchemaExport.<init>(SchemaExport.java:91)
я могу подозревать, только что Hibernate не нравится PK будет Ф.К., но я не могу изменить схему.
Любые известные резолюции?
Благодаря
Должно ли это не быть OneToOne? Я имею в виду, если ключ foreing также является ключом primery, то у этого объекта может быть только одна связь с родительским объектом, не так ли? –