을 찾지 못하는 내가 가지고있는 다음과 같은 클래스 :JPA의 XML 매핑 필드
package lt.vic.valdos.domain.valda;
public class Valda implements java.io.Serializable {
private long id;
private Long valdosKodas;
public long getId() {
return id;
}
public Long getValdosKodas() {
return valdosKodas;
}
}
다음과 같은 orm.xml :
<?xml version="1.0"?>
<entity-mappings
xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/orm"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.eclipse.org/eclipselink/xsds/persistence/orm http://www.eclipse.org/eclipselink/xsds/eclipselink_orm_2_1.xsd"
version="2.1">
<entity class="lt.vic.valdos.domain.valda.Valda">
<table name="VALDOS" schema="VLD" />
<attributes>
<id name="id" />
<basic name="id">
<column name="vld_id" />
<return-insert return-only="true" />
</basic>
<basic name="valdosKodas">
<column name="valdos_kodas" />
</basic>
</attributes>
</entity>
</entity-mappings>
내가 글래스 피쉬이를 배포 할 때, 나는 다음과 같은 오류가 발생합니다 :
Exception [EclipseLink-7215] (Eclipse Persistence Services - 2.3.0.v20110604-r9504): org.eclipse.persistence.exceptions.ValidationException
Exception Description: Could not load the field named [id] on the class [class lt.vic.valdos.domain.valda.Valda]. Ensure there is a corresponding field with that name defined on the class.
클래스가 메일 응용 프로그램에 종속성 종속성으로 포함 된 jar 파일입니다. orm.xml은 웹 애플리케이션의/WEB-INF/classes/META-INF에 있습니다.
내가 뭘 잘못하고 있니?
나는 태그를 안에 추가하려고 시도했습니다. 그러나 안에 배치 할 수없는 eclipselink의 태그 (기본 키 트리거가있는 이전 DB 디자인)가 필요하기 때문에 을 제거 할 수 없습니다. 나는 여전히 과 모두 같은 결과를 얻고 있습니다. 내가 어노테이션을 사용하면 어노테이션 접근이 더 쉽고 모든 것이 작동한다는 것을 알고있다. 하지만 내 도메인 항아리에서 JPA에 대한 의존성을 좋아하지 않습니다. –
테스트 용으로 만 기본 패키지를 제거한 경우 예외가 사라지나요? – Chris
id 필드에 대해을 제거하더라도 예외가 유지됩니다. –