2010-02-23 2 views
0

@Lob 주석 문자열 필드로 엔티티를 유지하려고합니다. 40k 버퍼 크기 제한보다 크면 해당 내용이 표시됩니다.JPA (버퍼가 너무 작음)를 사용하는 ORA-22835

내가 가진 첫 번째 문제점은 JPA 구현 (내 경우에는 Hibernate)과 Oracle JDBC 드라이버에 의해 내부적으로 사용되는 setString 메소드와 관련이 있습니다. 이 문제는 내 persistence.xml 파일에

<property name="hibernate.connection.SetBigStringTryClob" value="true"/> 

을 추가하여 해결되었습니다.

그런 다음 오류가 ORA-22835 오류로 변경되었습니다 (버퍼가 너무 작음). ¿ JPA가 저수준 구현없이이 문제를 해결할 수있는 방법이 있습니까? ¿ 제안이 있습니까?

+0

어떤 버전의 Oracle JDBC 드라이버를 사용하고 있습니까? – malaverdiere

답변

0

Oracle 10g Release 2 drivers와 시도는 이상 (this previous answer에서 언급 한 바와 같이 이전 버전의 버그가 있습니다) (가장 최근의 ojdbc14.jar를 즉 10.2.0.4을 선택) 할 수 있습니다.

+0

OK then ... 나는 마지막 드라이버를 다운로드했다. (나는 이미 가지고 있다고 생각했지만 잘못되었다.) 이제 다른 오류가 발생했습니다 : ORA-24816 => 확장 된 비 LONG 바인드 데이터가 실제 LONG 또는 LOB 열 뒤에 제공됩니다. Oracle의 문제점입니다. JPA (또는 내 구현의 Hibernate 기본 구현)가 Clob 열이 마지막에 오도록 주어진 순서로 열을 정렬하도록하는 방법이 있습니까? 그것은 내가 지금 가지고있는 문제인 것 같습니다 ... – Svoice

+0

문제가 방금 사라졌습니다. S는 오늘 사라지는 것이 내일 다시 나타날 수 있기 때문에 그다지 행복하지 않습니다. 그러나 구성 문제와 같이 보일 것입니다. – Svoice

관련 문제