![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| Grishanya |
|
||||||||
|
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 13.9.2007 Репутация: нет Всего: нет |
Добрый день!
В процессе работы с JPA (EclipseLink) возникла проблема, которую пока не удаётся решить: Имеется два EJB модуля. В модуле 1 определён некоторый Entity, скажем Animal, который является родительским:
В модуле 2 определен наследник от Animal, скажем Cat.
Сохранение работает. Теперь необходимо из модуля 1 извлечь экземпляр объекта из таблицы Animal след. образом:
т.е. необходимо работать не с дочерним, а суперклассом. И вот в этом месте PersistanceProvider выдаёт исключение:
Теперь, собственно, вопрос: Где ошибка? Почему нельзя работать с суперклассом как с отдельным классом, а PersistanceProvider требует наличия дочернего класса в модуле? (Если Cat перетащить в модуль с Animal, то всё работает) Заранее спасибо! Это сообщение отредактировал(а) powerOn - 19.1.2010, 17:37 |
||||||||
|
|||||||||
| Joss |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 103 Регистрация: 19.3.2006 Репутация: нет Всего: 1 |
Я так понимаю, ejb-модули не видят классов друг из друга.
|
|||
|
||||
| Grishanya |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 13.9.2007 Репутация: нет Всего: нет |
Модуль 1 (c классом Animal) не видит модуль 2 (с классом Cat). Наоборот они друг друга видят (т.к. в модуль 2 добавлена баблиотека с jar'кой модуля 1). Иначе невозможно было бы реализовать наследование. Т.е. если производить поиск из модуля 2, то всё нормально работает, а вот из модуля 1 - нет, т.к. JPA пытается поднять не родительский класс, а потомка. А работать необходимо именно с суперклассом. Это сообщение отредактировал(а) Grishanya - 20.1.2010, 12:48 |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |