datanucleus-spatial 플러그인에서 Datanucleus를 사용하려고합니다. 내 매핑에 주석을 사용하고 있습니다. 나는 PostGIS와 오라클의 공간을 모두 시도하고있다. 데이터 핵에서 튜토리얼로 돌아가겠습니다. 내가 겪고있는 것은 말이되지 않습니다. 내 개발 환경은 Netbeans 7.x입니다 (필자는 7.0, 7.2 및 7.3을 시도했으며 MAven 2.2.1을 사용했습니다).에있는 Datanucleus 튜토리얼의 Position 클래스를 사용하여 데이터 핵 공간 플러그인을 내 Maven 종속성에 포함시키지 않으면 PostGIS 또는 Oracle에 아무 문제없이 연결하고 데이터를 커밋하며 공간 데이터는 blob (나는 공간 플러그인이 존재하지 않기 때문에 이것을 기대했다). PostGIS를 사용하면 자습서가 잘 작동합니다.공간 확장이 추가되면 Datanucleus에서 오류가 발생하는 이유
org.postgis.Point 클래스를 oracle.spatial.geometry.JGeometry로 대체하고 Oracle 연결을 가리키는 위치 클래스를 수정합니다. 공간이 없으면 점은 다시 얼룩으로 저장됩니다. 공간으로 나는 다음과 같은 예외가 :
java.lang.ClassCastException가 : org.datanucleus.store.rdbms.datasource.dbcp.PoolingDataSource $ PoolGuardConnectionWrapper이 oracle.jdbc.OracleConnection
캐스트 할 수없는
내가 DataNucleus 공간의 멋진 세계에서 누락 뭔가
@PersistenceCapable
public class Position
{
@PrimaryKey
private String name;
@Persistent
private JGeometry point;
public Position(String name, double x, double y)
{
this(name, JGeometry.createPoint(new double[]{x, y}, 2, 4326));
}
public Position(String name, JGeometry point)
{
this.name = name;
this.point = point;
}
public String getName()
{
return name;
}
public JGeometry getPoint()
{
return point;
}
@Override
public String toString()
{
return "[name] "+ name + " [point] "+point;
}
}
있습니까 : 수정 된 클래스는 다음과 같습니다? 공간이 추가 될 때마다 왜 실패합니까? 주석 달기에도 JDO XML 파일이 필요합니까? 튜토리얼에 주석이 표시되지 않습니까? 자습서에 표시된 jdo xml 파일이 필요하고 이러한 오류가 발생하는 이유는 어디에 넣어야합니까? 나는 현재 프로젝트에서 3 주 뒤쳐져 있으며 곧 수정되지 않으면 최대 절전 모드로 전환하려고합니다.