com.ibatis.sqlmap.engine.execution
Class BatchException

java.lang.Object
  extended byjava.lang.Throwable
      extended byjava.lang.Exception
          extended bycom.ibatis.sqlmap.engine.execution.BatchException
All Implemented Interfaces:
java.io.Serializable

public class BatchException
extends java.lang.Exception

This exception is thrown if a java.sql.BatchUpdateException is caught during the execution of any nested batch. The exception contains the java.sql.BatchUpdateException that is the root cause, as well as the results from any prior nested batch that executed successfully. This exception is only thrown from the executeBatchDetailed method.

Author:
Jeff Butler
See Also:
Serialized Form

Constructor Summary
BatchException(java.lang.String message, java.sql.BatchUpdateException cause, java.util.List successfulBatchResults, java.lang.String failingStatementId, java.lang.String failingSqlStatement)
           
 
Method Summary
 java.sql.BatchUpdateException getBatchUpdateException()
          Returns the BatchUpdateException that caused the nested batch to fail.
 java.lang.String getFailingSqlStatement()
          Returns the SQL statement that caused the failure (not the parameters)
 java.lang.String getFailingStatementId()
          Returns the statement id of the statement that caused the failure
 java.util.List getSuccessfulBatchResults()
          Returns a list of BatchResult objects.
 
Methods inherited from class java.lang.Throwable
fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

BatchException

public BatchException(java.lang.String message,
                      java.sql.BatchUpdateException cause,
                      java.util.List successfulBatchResults,
                      java.lang.String failingStatementId,
                      java.lang.String failingSqlStatement)
Method Detail

getBatchUpdateException

public java.sql.BatchUpdateException getBatchUpdateException()
Returns the BatchUpdateException that caused the nested batch to fail. That exception contains an array of row counts that can be used to determine exactly which statemtn of the batch caused the failure (or failures).

Returns:
the root BatchUpdateException

getSuccessfulBatchResults

public java.util.List getSuccessfulBatchResults()
Returns a list of BatchResult objects. There will be one entry in the list for each successful sub-batch executed before the failing batch.

Returns:
the previously successful batch results (may be an empty list if no batch has executed successfully)

getFailingSqlStatement

public java.lang.String getFailingSqlStatement()
Returns the SQL statement that caused the failure (not the parameters)

Returns:
the failing SQL string

getFailingStatementId

public java.lang.String getFailingStatementId()
Returns the statement id of the statement that caused the failure

Returns:
the statement id