Я использую провайдер EclipseLink для общения с базой данных mysql.Я заметил, что в области моего приложения библиотека возвращает данные запроса, которые не соответствуют БД.
Запрос:
@NamedQuery(name = "EmailAddress.findAll", query = "SELECT e FROM EmailAddress e")
Этот запрос правильный, я в этом уверен.Код, который я использую для выполнения этого запроса:
EntityTransaction entr = em.getTransaction();
entr.begin();
emailAddresses = em.createNamedQuery("EmailAddress.findAll").getResultList();
em.close()
Я установил точку останова на закрытие, чтобы я мог видеть содержимое списка emailAddress, примерно 1 раз в 3массив заполнен неправильно.Немного больше предыстории - у меня есть таблица, в которой перечислены имена, при нажатии на имя появляется диалоговое окно и позволяет изменить имя, при нажатии кнопки «Сохранить» оно закрывает диалог и обновляет таблицу (как БД, так и пользовательский интерфейс), иногда пользовательский интерфейснеправильно обновлено и отредактированное имя не обновляется.Обновление запускает код, включающий указанный выше блок.База данных корректно обновляется до запуска кода, просто массив заполнен неправильно.
У кого-нибудь еще были проблемы, связанные с этим, или есть какие-либо идеи?
Любая помощь сильнооценили!