Мы извлекаем данные из таблицы «ACCESS_STATUS», как показано ниже.Eclipse link JPA Select Query возвращает значение нулевого поля
ID NAME 1 Внешний 2 Внутренний
Когда мы используем ниже JPA код: В конкретном случае, когда два пользователя одновременно получить доступ к этой таблице в столбце Имя первой строки выбирается в качестве НОЛЬ. Это поле используется далее, поэтому исключается исключение нулевого указателя, и приложение перестает работать, и его необходимо перезапустить.
JpaEntityManager jpaEm = JpaHelper.getEntityManager(em);
ReadAllQuery query=new ReadAllQuery(AccessStatus.class);
Collection accessStatus = (Collection)jpaEm.getActiveSession().executeQuery(query)
Если я использую родной запрос, как показано ниже, эта проблема не существует:
try {
preparedStatement=connection.prepareStatement(sb.toString());
resultSet=preparedStatement.executeQuery();
while (resultSet.next()) {
id = resultSet.getString(1);
name = resultSet.getString(2);
accessStatus.add(new AccessStatus(id,name));
}
}
Является ли это ошибка в JPA/Java EE? Что такое постоянное решение этой проблемы?