3
IMGSimilar 연산자에서 검색을 위해 OrdImageSinature 작성시 사용으로 인해 이중 테이블 (이중에서 ordsys.ordimage.init() 선택)을 통한 선택을 사용하여 Oracle 데이터베이스에서 OrdImage 객체를 검색하려고합니다. .DB에 아무 것도 삽입하지 않은 OrdImage 객체 초기화
java.sql.SQLException: ORA-22275: invalid LOB locator specified
ORA-06512: at "SYS.DBMS_LOB", line 797
ORA-06512: at "ORDSYS.ORDSOURCE", line 778
ORA-06512: at "ORDSYS.ORDIMAGE", line 508
ORA-06512: at line 1
내 코드는 다음입니다 : : 문제는 ORDImage 프록시에 데이터를 저장 한 후 나는이 오류를 얻을이며, 내가있는 ImageProxy에 배치하고
Statement statement = connection.createStatement();
OracleResultSet result = (OracleResultSet) statement.executeQuery("SELECT ordsys.ordimage.init(), ordsys.ordimagesignature.init() FROM DUAL");
if (result.next()) {
OrdImage imageProxy = (OrdImage) result.getORAData(1, OrdImage.getORADataFactory());
OrdImageSignature imageSignatureProxy = (OrdImageSignature) result.getORAData(2, OrdImageSignature.getORADataFactory());
statement.close();
result.close();
imageProxy.loadDataFromByteArray(image.write().toByteArray()); //this line invokes error
imageProxy.setProperties();
imageSignatureProxy.generateSignature(imageProxy);
//here will be performed search operation
}
이미지가 HDD에 로컬로 저장됩니다 (그렇지 않다 데이터베이스에 저장 됨). OrdImageSignature를 작성하지 않고 OrdImage를 작성하지 않고이 오류를 우회하는 방법이나 해결 방법이 있습니까?
고맙습니다.