| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java EE (J2EE) и Spring > Hibernate: "could not initialize a collection" |
| Автор: ochnev 8.2.2008, 02:28 | ||||||
| Подскажите кто-нибудь, почему такое происходит? Неожиданно стало всё время вылетать: org.hibernate.exception.SQLGrammarException: could not initialize a collection Вылетает на вызове Hibernate.initialize(myObject.getColletcionOfSomething()) Почему "неожиданно" - потому что раньше там не вылетало, и в похожих вызовах тоже всё работало и работает. Подробности: Фрагмент кода, на котором вылетает ошибка:
Мэппинг:
Таблицы:
В таблице working_day записей нет. |
| Автор: Samotnik 8.2.2008, 03:05 | ||
| а что такое group ?? Я думаю, что проблема, в условии
не проходит неравенство на ноль! |
| Автор: ochnev 8.2.2008, 03:53 | ||
Всего лишь имя переменной. Это обычный bean, связанный с записью в базе. А от сравнения с null ничего падать не может. |
| Автор: tux 8.2.2008, 06:59 |
| Приведи код Hibernate.initialize() и маппинг для WorkingDay. И стектрейс не помешал бы. |
| Автор: ochnev 8.2.2008, 12:42 | ||||||
| Hibernate.initialize() - это исходник самого Hibernate, это не из моего проекта. Вот он (раз уж спросил):
Мэппинг для WorkingDay:
Stack trace:
|
| Автор: ochnev 8.2.2008, 14:36 |
| В догонку: Что-то там вообще беда. Не только Hibernate.initialize() не срабатывает, но и просто запрос на выборку из WorkingDay не срабатывает. Всё работало, теперь всё накрылось... Почему у Hibernate такие немногословные описания ошибок? Уже который раз замечаю, что детали выяснить - вообще без шансов. Остаётся только догадываться, где мог ошибиться. |
| Автор: mindflyer 8.2.2008, 16:35 |
| Разве это полный стектрейс? И никаких "Caused by" больше нет? Обычно самый крайний бывает вполне информативен. Скорее всего имеет место рассогласование маппинга и структуры бд. Проверь, точно ли структура таблицы соответствует маппингу. |
| Автор: ochnev 8.2.2008, 17:02 |
| Проверил - так и есть. Колонка таблицы потерялась при изменениях в базе. Сейчас исправил - заработало. Да, стектрейс был полным. Благодарю. |