У меня есть 1 объект вызова Item, в котором я хочу иметь возможность связывать родительские элементы с дочерними элементами. для использования таблицы join для создания отношений родителя/ребенка. Я не смог получить хорошую документацию. Поэтому, если у кого-то есть мысли, я все уши.JPA Self Join using JoinTable
Вот что я имею ... который работает большую часть времени.
public class Item implements java.io.Serializable {
@Id
private Long id;
@ManyToOne(optional = true, fetch = FetchType.LAZY)
@JoinTable(name = "ITEMTOITEM", joinColumns = { @JoinColumn(name = "ITEMID") }, inverseJoinColumns = { @JoinColumn(name = "PARENTITEMID") })
private Item parent;
@OneToMany(mappedBy = "parent", fetch = FetchType.LAZY)
private List<Item> children;
}
Иногда, когда я хочу, чтобы вернуть объекты, которые привязаны к этому пункту таблицы я получаю ошибку следующим образом:
org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.springframework.webflow.engine.ActionExecutionException: Exception thrown executing [[email protected] targetAction = [email protected], attributes = map['method' -> 'handleEntry']] in state 'oneTimeChargesAndFeesView' of flow 'in-flow' -- action execution attributes were 'map['method' -> 'handleEntry']'; nested exception is Exception [TOPLINK-4002] (Oracle TopLink Essentials - 2.0.1 (Build b04-fcs (04/11/2008))): oracle.toplink.essentials.exceptions.DatabaseException
Internal Exception: java.sql.SQLException: ORA-00904: "PARENTITEM_ITEMID": invalid identifier
Error Code: 904
Call: SELECT ITEMID, ITEMSHORTDESC, EFFENDDATE, ITEMDESC, PARENTITEM_ITEMID, ITEMTYPECODE FROM ITEM WHERE (ITEMID = ?)
bind => [1250]
Query: ReadObjectQuery(com.domain.Item)
Любая помощь будет оценена.
Здесь я соединили схему таблицы [здесь] (http://dbdsgnr.appspot.com/app#agdkYmRzZ25ycg8LEgZTY2hlbWEY0riZAQw). – jtoepfer
Последнее небольшое предостережение в том, что мне нужно это для работы с eclipselink и toplink-essentials. Поэтому я ограничена использованием сопоставлений JPA 1.0. – jtoepfer