Troubleshooting
Problem
Error executing LWJDBC query: ORA-01008: not all variables bound
Symptom
Error executing LWJDBC query
Advance Status error: 1008: ORA-01008: not all variables bound
[2006-03-16 09:06:12.216] ERROR [LightweightJDBCAdapter] Error executing sql query "INSERT INTO GIS41.EMPTEST (EMPNO, ENAME, HIREDATE, JOB) values (?, ?, sysdate, ?)".
[2006-03-16 09:06:12.216] ERROR SQL Error Code: 1008
[2006-03-16 09:06:12.216] ERROR SQL State: 72000
java.sql.SQLException: ORA-01008: not all variables bound
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289)
at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:582)
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1986)
at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:1144)
at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:2152)<BR >at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:2035)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:287 6)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement .java:609)
at com.sterlingcommerce.woodstock.services.jdbc.lightweight.LightweightJdbcAdapterI mpl.processData(LightweightJdbcAdapterImpl.java:442)
at com.sterlingcommerce.woodstock.workflow.activity.engine.ActivityEngineHelper.inv okeService(ActivityEngineHelper.java:2072)
at com.sterlingcommerce.woodstock.workflow.activity.engine.ActivityEngineHelper.nex tMainLogic(ActivityEngineHelper.java:630)
at com.sterlingcommerce.woodstock.workflow.activity.engine.ActivityEngineHelper.nex t(ActivityEngineHelper.java:324)
at com.sterlingcommerce.woodstock.workflow.queue.WorkFlowQueueListener.doWork(WorkF lowQueueListener.java:586)
at com.sterlingcommerce.woodstock.workflow.queue.WorkFlowQueueListener.run(WorkFlow QueueListener.java:495)
at com.sterlingcommerce.woodstock.workflow.queue.WorkFlowQueueListener.onMessage(Wo rkFlowQueueListener.java:462)
at com.sterlingcommerce.woodstock.workflow.queue.WorkFlowQueueListener.onMessage(Wo rkFlowQueueListener.java:432)
at com.sterlingcommerce.woodstock.workflow.queue.wfTransporter.run(wfTransporter.ja va:316)
at com.sterlingcommerce.woodstock.workflow.queue.BasicI will Executor$Worker.run(BasicExec utor.java:493)
at java.lang.Thread.run(Thread.java:534)
The bpml for the LWJDBC adapter does not have the param# and paramtype# sequentially numbered. Example:
If the SQL statement is: INSERT INTO GIS41.EMPTEST (EMPNO, ENAME, HIREDATE, JOB) values (?, ?, sysdate, ?)
<assign to="param1" from="'1'"/>
<assign to="paramtype1">String</assign>
<assign to="param2" from="/ProcessData/ENAME/text()"/>
<assign to="paramtype2">String</assign>
<assign to="param4" from="/ProcessData/JOB/text()"/>
<assign to="paramtype4">String</assign>
Cause
The LWJDBC adapter is looking for a fourth placeholder (?) for the param4 and paramtype4 parameters.
Resolving The Problem
Make sure that the bpml sequentially numbers the param and paramtype parameters to match the number of placeholders (?) in the SQL statement.
For the SQL statement above, the bpml should be as follows:
<assign to="param1" from="'1'"/>
<assign to="paramtype1">String</assign>
<assign to="param2" from="/ProcessData/ENAME/text()"/>
<assign to="paramtype2">String</assign>
<assign to="param3" from="/ProcessData/JOB/text()"/>
<assign to="paramtype3">String</assign>
Historical Number
PRI29224;SCI88974
Was this topic helpful?
Document Information
Modified date:
11 February 2020
UID
swg21528655