В Oracle Metalink (сайт за поддръжка на Oracle - бележка ID 736273.1) открих, че това е грешка в JDBC адаптера (версия 10.2.0.0.0 до 11.1.0.7.0), че когато извикате readyStatement с повече от 7 позиционни параметъра, тогава JDBC ще хвърля тази грешка.
Ако имате достъп до Oracle Metalink, тогава една от опциите е да отидете там и да изтеглите споменатата корекция.
Другото решение е заобиколно решение - използвайте именувани параметри вместо позиционни параметри:
INSERT INTO rule_definitions(RULE_DEFINITION_SYS,rule_definition_type,
rule_name,rule_text,rule_comment,rule_message,rule_condition,rule_active,
rule_type,current_value,last_modified_by,last_modified_dttm,
rule_category_sys,recheck_unit,recheck_period,trackable)
VALUES(RULE_DEFINITIONS_SEQ.NEXTVAL,:rule_definition_type,
:rule_name,:rule_text,:rule_comment,:rule_message,:rule_condition,:rule_active,
:rule_type,:current_value,:last_modified_by,:last_modified_dttm,
:rule_category_sys,:recheck_unit,:recheck_period,:trackable)
и след това използвайте
preparedStatement.setStringAtName("rule_definition_type", ...)
и т.н., за да зададете именувани променливи за свързване за тази заявка.