Исключение исчерпанного результирующего набора после периода, когда приложение запущено - PullRequest
0 голосов
/ 28 мая 2011

У нас есть Java-приложение, работающее на JBOSS с Oracle.Мы также используем фреймворки seam и hibernate.

Когда наше приложение готово к работе, через несколько часов после запуска приложения мы сталкиваемся с такой проблемой:

crms_log_27_may.txt:10:47:09,170 ERROR [STDERR] java.sql.SQLException: Exhausted Resultset
crms_log_27_may.txt:10:47:09,170 ERROR [STDERR] java.sql.SQLException: Exhausted Resultset   
crms_log_27_may.txt:10:47:09,170 ERROR [STDERR] java.sql.SQLException: Exhausted Resultset
crms_log_27_may.txt:10:22:18,135 ERROR [STDERR] Caused by: java.sql.SQLException: Closed Connection
crms_log_27_may.txt:10:24:10,231 ERROR [STDERR] Caused by: java.sql.SQLException: Closed Connection

Я проверил весь свой код и обнаружил, что яиспользовал rs.next() и правильно закрыл объекты.

1 Ответ

0 голосов
/ 28 мая 2011

Если где-то есть пул соединений, то после определенного периода бездействия соединения могут устареть, и вам необходимо перенастроить пул соединений, чтобы обнаружить это, чтобы получить только хорошие соединения.

Обычно это делается с помощьюпростой запрос, который ничего не меняет, например «выберите 1 из двойного», и если он отвечает правильно, соединение хорошее, и вы получите его.Если этого не произойдет, он будет удален и создан для вас.

...