2013-10-01 2 views
1

현재 동료와 함께 Java 애플리케이션을 Hibernate 4를 사용하도록 전송하고 있습니다.이 작업의 일부로 Ocracle 지오 메트 데이터를 Java에로드 할 수 있어야합니다 신청. 나는 'Hibernate Spatial - 오라클 지오메트리를로드하려고하는데 UnsupportedOperationException이 발생했습니다.

@Type(type="org.hibernate.spatial.GeometryType") private Geometry ordinates; 

:

Caused by: java.lang.UnsupportedOperationException 
at org.hibernate.spatial.GeometrySqlTypeDescriptor.getExtractor(GeometrySqlTypeDescriptor.java:57) 

이 형상을 유지하는 변수에 대한 열 정의입니다 : 우리가 시도하고 형상을로드 할 때, 우리는보다 특별한 오류, 최대 절전 모드 공간에서 UnsupportedOperationException를 얻을 최대 절전 모드 쿼리를 검사 한 결과 모든 것이 잘된 것처럼 보입니다. 우리는 Hibernate 4.2.2, Hibernate Spatial 4.0-M1 및 JTS 1.8을 사용하고있다. 데이터베이스는 Oracle 11g입니다.

미리 감사드립니다.

답변

2

답변을 작성했습니다. 문제는 Hibernate를위한 dialet의 설정 때문이다. 오히려이보다

config = config.setProperty(Environment.DIALECT, "org.hibernate.spatial.dialect.oracle.OracleSpatial10gDialect") 

: 사용되어야 방언이있다

config = config.setProperty(Environment.DIALECT, "org.hibernate.dialect.Oracle10gDialect") 

오류 메시지가 그 하나에 완전히 명확하지 않다 그러나 이것은 잘하면 다른 사람이이 문제가 해결됩니다.

+0

그리고 MySQL을 사용한다면, 원하는 방언은''org.hibernate.spatial.dialect.mysql.MySQLSpatialDialect "'입니다. – aroth