|
Модераторы: LSD, AntonSaburov |
|
JUncle |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 162 Регистрация: 6.4.2006 Где: Казань, РФ Репутация: нет Всего: 1 |
Здравствуйте!
Собственно, перелезли с 4.0.4 на 4.2.0. Всплыла следующая ошибка. Первый запрос к БД из EJB-на проходит нормально, остальные падают, если происходят в этом же соединении. После долгого изучения доступных источников, стало вроде бы понятно что это из-за нового менеджера транзакций. Не особо понятна "физика" явления. Транзакций в явном виде не используем. Может кто-то лечил такое? Подскажите пожалуйста, как лучше всего это сделать. --------------------
class JUncle extends Man // singleton{/*...*/} |
|||
|
||||
mindflyer |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 113 Регистрация: 20.10.2004 Где: Smolensk, Russia Репутация: 3 Всего: 4 |
Подробнее, плиз. К базе как обращаетесь? hibernate, JDBC,...? Какая СУБД?
Пример EJB тоже не помешает. И сама ошибка вместе со стектрейсом. Месяц назад сделали такой же переезд, проблем не было. Работаем через hibernate. Это сообщение отредактировал(а) mindflyer - 12.7.2007, 17:46 |
|||
|
||||
JUncle |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 162 Регистрация: 6.4.2006 Где: Казань, РФ Репутация: нет Всего: 1 |
mindflyer, виноват, времени не было.
Использован Hibernate. В том то и было дело. Транзакции были не при чем. У версии Hibernate в JBoss 4.2.0 изменена работа с параметрами запроса. Если раньше допускалось, допустим, вместо числового значения подставлять строчку, представляющее это значение, то сейчас такие вольности не прокатывают. Вот и вся трабла. --------------------
class JUncle extends Man // singleton{/*...*/} |
|||
|
||||
JUncle |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 162 Регистрация: 6.4.2006 Где: Казань, РФ Репутация: нет Всего: 1 |
Как оказалось, это только в одном проекте. Если работаешь напрямую с JDBC, получить данные через одно соединение можно лишь однократно, после этого выкидывается исключение. Пришлось в конфиге, предварительно погуглив, выставить allowMultipleLastResources=true. После этого все работает, но выкидывается куча ворнингов, типа это костыли и лучше так не делать. Кто-нибудь может объяснить физику явления? И как выглядит штатный вариант? --------------------
class JUncle extends Man // singleton{/*...*/} |
|||
|
||||
mindflyer |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 113 Регистрация: 20.10.2004 Где: Smolensk, Russia Репутация: 3 Всего: 4 |
Хм, аналогично работаем и через JDBC (логи пишем), проблем нет. Ты всё же покажи, плиз, работающий с базой код и эксепшен. Ну и ворнинги вот эти про костыли. |
|||
|
||||
JUncle |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 162 Регистрация: 6.4.2006 Где: Казань, РФ Репутация: нет Всего: 1 |
Код показать не могу. Трейсы тоже будут урезанные. --------------------
class JUncle extends Man // singleton{/*...*/} |
|||
|
||||
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |