DBUnit, Hibernate/JPA, DAO и флеш

Цель

Чтобы протестировать метод создания DAO, я создаю экземпляр, вставляю его в базу данных, очищаю диспетчер сущностей, чтобы обновить базу данных, а затем используйте dbunit для сравнения таблицы с использованием набора данных.


Код

Here is the Код, it uses Spring test, DBUnit and JPA (via Hibernate) :

<������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

����лема

This Код never ends, it seems to freeze (infinite loop ?) during this command:

<������������������������

�� I comment the <�Код>em.flush() block, the test ends (no freeze or infinite loop). In this case, the test fails because the database has not been updated after the insert.


Вопрос

как я могу протестировать метод создания DAO с использованием аналогичного подхода (сравнить набор данных с dbunit) без замораживания при вызове dataset.getTable ()?

2
добавлено
Просмотры: 1
nl ja de

1 ответы

Я нашел решение. Проблема была вызвана соединением.

Если я заменю:

Session session = em.unwrap(Session.class);
Connection conn = SessionFactoryUtils.getDataSource(
        session.getSessionFactory()).getConnection();

от

DataSource ds = (DataSource) applicationContext.getBean("dataSource");
Connection conn = DataSourceUtils.getConnection(ds);

Все работает отлично ...

Я не понимаю, почему, поэтому дайте мне знать в комментариях, если у вас есть ключ, чтобы помочь мне понять это.

1
добавлено