[ http://issues.apache.org/jira/browse/IBATIS-261?page=comments#action_12366814 ]
Arne Burmeister commented on IBATIS-261: ---------------------------------------- I just got the same with 2.1.6! The bug seems to depend on the JDBC-Driver! No Problem with HSQL, but every time with Oracle Thin Driver... We also use Spring (2.0) and Java 1.5 - the code looks like: ? extends org.springframework.orm.ibatis.support.SqlMapClientDaoSupport { protected void update(final String updateName, final Collection< ? > parameterObjects) { debug(updateName, parameterObjects); SqlMapClientTemplate sqlTemplate = getSqlMapClientTemplate(); Integer result = (Integer)sqlTemplate.execute(new SqlMapClientCallback() { public Object doInSqlMapClient(SqlMapExecutor executor) throws SQLException { executor.startBatch(); for (Object parameterObject : parameterObjects) { executor.update(updateName, parameterObject); } return new Integer(executor.executeBatch()); } }); if (result.intValue() != parameterObjects.size()) { throw new JdbcUpdateAffectedIncorrectNumberOfRowsException( updateName, parameterObjects.size(), result.intValue()); } } } We always get the JdbcUpdateAffectedIncorrectNumberOfRowsException > CLONE -The method executor.executeBatch() always returns 0. > ----------------------------------------------------------- > > Key: IBATIS-261 > URL: http://issues.apache.org/jira/browse/IBATIS-261 > Project: iBatis for Java > Type: Bug > Components: SQL Maps > Versions: 2.1.0 > Environment: SUN JVM 1.4.2 On Windows > Reporter: Arne Burmeister > > I am using Sql Maps 2.1.5 with Spring 1.2.4. > I have a method as following. > I want to get the number of rows updated in the batch . > But it always returns 0. > public int insertBatchError(final List batchErrorList) { > Integer count = (Integer) getSqlMapClientTemplate().execute(new > SqlMapClientCallback() { > public Object doInSqlMapClient(SqlMapExecutor executor) throws > SQLException { > executor.startBatch(); > for (int i = 0; i < batchErrorList.size(); i++) { > BatchErrorDTO batchErrorDto = (BatchErrorDTO) > batchErrorList.get(i); > executor.update("insertBatchError", batchErrorDto); > } > int count = executor.executeBatch(); > return new Integer(count); > } > }); > > return count.intValue(); > } -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira