title: the object is already closed in integration test
body: <p>I am using <code>spring-test-dbunit</code> to run integration tests. I want to use different datasets inside one class.</p>
  
  <p>I have <code>BaseRepositoryTest</code> class</p>
  
  <pre><code>@RunWith(SpringJUnit4ClassRunner.class)
  @ContextConfiguration(value = {
          "classpath:path/to/context/context.xml"})
  @DirtiesContext(classMode = ClassMode.AFTER_CLASS)
  @TransactionConfiguration()
  public abstract class BaseRepositoryTest extends AbstractTransactionalJUnit4SpringContextTests {
      /** Database connection. */
      @Autowired
      protected IDatabaseConnection databaseConnection;
  
  
      /**
       * Configures database connection.
       */
      @PostConstruct
      public void initConfig() {
          try {
              databaseConnection.getConnection().setAutoCommit(true);
          } catch (SQLException e) {
              // throws exception
          }
      }
  
      /**
       * Load dataset data.
       *
       * @param datasetPath path to dataset
       */
      protected void loadData(String datasetPath) {
          try {
              IDataSet dataset = new FlatXmlDataSetBuilder()
                      .setColumnSensing(true)
                      .build(new ClassPathResource(datasetPath).getFile());
              DatabaseOperation.CLEAN_INSERT.execute(databaseConnection, dataset);
          } catch (Exception e) {
              // throws exception
          }
      }
  </code></pre>
  
  <p>And <code>BaseAnnotatedRepositoryTest</code> class</p>
  
  <pre><code>@DbUnitConfiguration(databaseConnection = { "databaseConnection" })
  @TestExecutionListeners(DbUnitTestExecutionListener.class)
  public abstract class BaseAnnotatedRepositoryTest extends BaseRepositoryTest {
  </code></pre>
  
  <p>And here is the test</p>
  
  <pre><code>public class PrototypeTest extends BaseAnnotatedRepositoryTest {
  
      private static final String TEST_DATASET =
              "testDataset.xml";
  
      @Autowired
      private IQuestionRepository repository;
  
      @Test
      @DatabaseSetup(TEST_DATASET)
      public void testSimple() {
      }
  
      @Test
      @DatabaseSetup(TEST_DATASET)
      public void anotherTestSimple() {
      }
  
  }
  </code></pre>
  
  <p>When I attempt to run the test I get the error with that cause</p>
  
  <pre><code>org.h2.jdbc.JdbcSQLException: The object is already closed [90007-170]
      at org.h2.message.DbException.getJdbcSQLException(DbException.java:329)
      at org.h2.message.DbException.get(DbException.java:169)
      at org.h2.message.DbException.get(DbException.java:146)
      at org.h2.message.DbException.get(DbException.java:135)
      at org.h2.jdbc.JdbcConnection.checkClosed(JdbcConnection.java:1388)
      at org.h2.jdbc.JdbcConnection.checkClosed(JdbcConnection.java:1366)
      at org.h2.jdbc.JdbcConnection.setAutoCommit(JdbcConnection.java:406)
  </code></pre>
  
  <p>If I separate those test methods - for example move every method to its own class - it works fine.</p>