com.ibm.db2.jcc.am.SqlSyntaxErrorException:

[jcc][10145][10844][3.62.56] Invalid parameter 1: Parameter

index is out of range. ERRORCODE=-4461, SQLSTATE=42815

com.ibm.db2.jcc.am.SqlSyntaxErrorException:

[jcc][10145][10844][3.62.123] 유효하지 않은 매개변수 1: 매개변수 인덱스가 범위를 벗어납니다.

ERRORCODE=-4461, SQLSTATE=42815



이 오류는 기본적으로 db2 jdbc type 4 드라이버가 named parameter setting 처리 도중 파라미터의 타입과 실제 컬럼의 데이터 타입이 맞지 않는 데서 발생한다. 그런데 2대 이상의 호스트에서 컨테이너를 띄울 때, 간혹 정확히 같은 request 내용을 처리 시 어떤 서버에서는 오류가 발생하고, 어떤 서버에서는 오류가 발생하지 않는 현상이 있다.


이는 db2 jdbc 드라이버 버전의 차이에서 발생하는 현상으로, 제우스의 datasource path 에서 db2 드라이버 버전을 맞춰 주어 해결할 수 있다.


아래는 내 호스트의 jdbc 드라이버 jar 위치이다. 제우스의 webinf-first 설정을 false 로 한다면 이 곳의 드라이버 클래스를 로드 할태니 참고.


.../jeus/lib/datasource/



아래는 ibm 의 관련 내용. JCC driver version 을 3.64.141 이상으로 올릴 것을 권하고 있다.


http://www-01.ibm.com/support/docview.wss?uid=swg1IC86612

+ Recent posts