![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
NikitOS9 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 44 Регистрация: 6.12.2007 Репутация: 1 Всего: 1 |
такая ситуация;
сервак glassfish3, есть два модуля
в модуле domainModel.jar находятся ejb, в которых используются некоторые классы из webClients.war, например если точнее, то из webClients.war\WEB-INF\classes\flexModel\FlexHouse.class при деплое ошибка что в модуле domainModel.jar ... java.lang.RuntimeException: EJB Container initialization error ... Caused by: java.lang.NoClassDefFoundError: flexModel/FlexHouse на glassfish v2 все находилось и работало, как тут и куда прописать пути к модулям ? спасибо |
|||
|
||||
powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
Мне кажется что доменная модель не должна ничего знать о своих клиентах, т.е. о классах из более высших слоев. Зависимость между модулями должна быть Web -> Domain, а не Web <-> Domain. Скорее всего у вас архитектурная ошибка.
|
|||
|
||||
NikitOS9 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 44 Регистрация: 6.12.2007 Репутация: 1 Всего: 1 |
это ошибка работала на glassfish v2, и если не ошибаюсь начиная с ejb3.1, например в eclipselink, ejb можно упаковывать в war модули и это считается нормальным
|
|||
|
||||
powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
||||
|
||||
NikitOS9 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 44 Регистрация: 6.12.2007 Репутация: 1 Всего: 1 |
так данное приложение требует, в WEB-INF\classes\flexModel\ лежат классы для серилизации и обратно, java <-> as3 объектов.
в ejb тоже нужно иметь доступ к этим классам для преобразования в доменные классы и тд.. оффтоп конечно, вообще связи могут быть какие угодно, кто сказал что только однонаправленные.. да и вопрос как в glassfish v3 обойти данную непонятную проблему |
|||
|
||||
powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
можно попробовать следующим образом:
переместить классы flexModel\** в архив domainModel.jar или вынести зависимости в отдельную либу, потом настроить их подгрузку через (<library-directory> настройка в application.xml) или попробовать загружать модули в определенном порядке (<initialize-in-order> настройка в application.xml)
принципы объектно-ориентированного дизайна говорят: http://c2.com/cgi/wiki?CouplingAndCohesion. |
|||
|
||||
NikitOS9 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 44 Регистрация: 6.12.2007 Репутация: 1 Всего: 1 |
эт похоже изменения в v3
вот тут такая же история http://forums.java.net/jive/thread.jspa?threadID=68567 http://forums.java.net/jive/message.jspa?messageID=375093 решение перепаковывать по другому ear, или asadmin deploy --property compatibility=v2 foo.ear |
|||
|
||||
![]() ![]() ![]() |
Правила форума "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. |