JPA와 올바른 주석에 많은 문제가 있으며 @JoinColumn, mappedBy 등과 같은 많은 주석과 조합을 시도했지만 여전히 오류가 발생합니다. 나는 EclipseLink (JPA 2.1)를 사용한다.JPA : 몇 가지 관계
@Entity
public class PointCoordinates extends BaseEntity {
@NotNull
private float long;
@NotNull
private float lat;
@OneToOne(mappedBy="pointCoordinates")
private Store store;
...
}
그리고이 '쇼핑몰'의 '@OneToMany "클래스 중 하나입니다 :
@Entity
public class Store extends BaseEntity {
@NotNull
private String name;
@NotNull
@OneToMany
private List<Price> listPrices;
@NotNull
@OneToMany
private List<BusinessHours> listBusinessHours;
@NotNull
@OneToOne
@JoinColumn(name="store_id")
private PointCoordinates pointCoordinates;
...
}
이 클래스 PointCoordinates입니다 :
나는 소유자 클래스 스토어가
@Entity
public class BusinessHours extends BaseEntity {
private Boolean holiday;
@ManyToOne
private Store store;
...
}
'Store'가 'PointCoordinates'의 소유자이므로 att에 주석을 달아야하기 때문에 효과가 있다고 생각했습니다. (글래스 피시 3.1.2.2에
Caused by: javax.persistence.PersistenceException: Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.5.0.v20130507-3faac2b): org.eclipse.persistence.exceptions.DatabaseException Internal Exception: java.sql.SQLException: Fehler beim Zuweisen einer Verbindung. Ursache: java.lang.IllegalStateException: Lokale Transaktion enthält bereits 1 Nicht-XA-Ressource: weitere Ressourcen können nicht hinzugefügt werden. Error Code: 0 Call: INSERT INTO POINTCOORDINATES (ID, LAT, LONG) VALUES (?, ?, ?) bind => [3 parameters bound]
오류 메시지 글래스 피쉬 4.0
오류 메시지 : @OneToOne(mappedBy="pointCoordinates")
와 private Store store
을 ribute과 반대편에 나는 @JoinColumn(name="store_id")
와 속성 private PointCoordinates pointCoordinates
에 주석을해야하지만 난 여전히 같은 오류가 영어)
Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.3.2.v20111125-r10461): org.eclipse.persistence.exceptions.DatabaseException Internal Exception: java.sql.SQLException: Fehler beim Zuweisen einer Verbindung. Ursache: java.lang.IllegalStateException: Local transaction already has 1 non-XA Resource: cannot add more resources. Error Code: 0 Call: INSERT INTO POINTCOORDINATES (ID, LAT, LONG) VALUES (?, ?, ?) bind => [3 parameters bound] Query: InsertObjectQuery([email protected])
환경에 문제가있는 것처럼 보입니다. 응용 프로그램 서버 또는 서블릿 컨테이너를 사용합니까? JPA 코드가이 예외를 담당한다고 생각되면 관계를 주석 처리하십시오. – Claude
귀하의 헌신에 감사드립니다,하지만 문제를 해결하고 내 대답을 살펴보십시오. – user2047688