Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > несколько jar (ejb-module) + 1 persistence.xml


Автор: coolin 7.9.2006, 16:45

Необходимо разделить архир jar - так как теперь ега части находяться в разных модулях (логически разделены).
но persistence.xml остается 1:

Код

<?xml version="1.0" encoding="UTF-8" ?>
<persistence>
    <persistence-unit name="probe">
        <jta-data-source>java:/base</jta-data-source>
    </persistence-unit>
</persistence>


так как entiti ссылаются друг на друга (например на общие справочники) а это, как понимается должно быть в рамках одного юнита ("probe").

как не пробовали (разные юниты, ссылающиеся jarы), в итоге одно: если получается задеплоить все джары, все маппится, то возникает ошибка не найден entiti (из другого модуля) [references an unknown entity].

что делать? может быть нужно ear или что-то подобное, ведь в 1 jar все работает.

 smile 

Автор: chief39 7.9.2006, 17:14
Цитата(coolin @  7.9.2006,  16:45 Найти цитируемый пост)
то возникает ошибка не найден entiti (из другого модуля) [references an unknown entity].

Уверен, что необходимый бин всё-таки собрался и задеплоился нормально?

Какой сервак, кстати?

Автор: coolin 7.9.2006, 18:04
Цитата(chief39 @  7.9.2006,  17:14 Найти цитируемый пост)
Уверен, что необходимый бин всё-таки собрался и задеплоился нормально?

если брать один persistence.xml, класть его по модулям то ругается на этапе деплоинга - не найден entiti.
можно сделать ссылки на другой модуль из persistence.xml, тогда ошибка возникает при действии - когда реально идет обращение к сущности. Сущности в этом случае биндятся, лог нормальный при деплоинге, но похоже все-таки не в пределах одного юнита, и при выполнении связей нет.
Цитата(chief39 @  7.9.2006,  17:14 Найти цитируемый пост)
Какой сервак, кстати?

jboss 4.0GA

Автор: coolin 8.9.2006, 10:49
можно выкладывать в такой структуре:

Код

modules.jar  (папка)
|_
|  META-INF  (папка)
|   |_
|      persistence.xml
|_
|   1.jar
|_
|   2.jar
|_
    3.jar

(в каждом джаре убираем persistence.xml)

persistence.xml:
Код

<?xml version="1.0" encoding="UTF-8" ?>
<persistence>
    <persistence-unit name="probe">
        <jta-data-source>java:/base</jta-data-source>
      <jar-file>../1.jar</jar-file>
      <jar-file>../2.jar</jar-file>
      <jar-file>../3.jar</jar-file>
    </persistence-unit>
</persistence>


Но при таком раскладе теряется возможность деплоить части, например чтобы обновить 1.jar придеться или перезапустить сервер или передерлоить целиком modules.jar.
как же быть?

Автор: chief39 8.9.2006, 14:14
Цитата(coolin @  8.9.2006,  10:49 Найти цитируемый пост)
Но при таком раскладе теряется возможность деплоить части, например чтобы обновить 1.jar придеться или перезапустить сервер или передерлоить целиком modules.jar.

Угум..

Всё должно быть в пределах файла... но... поглади в сторону ejb-refs и т.п. в дескрипторах - если верно помню - они именно для того и нужны, чтоб склеивать энтити из разных файлов.

Погляди стандарты дескриптора и поищи нужные теги

Автор: coolin 8.9.2006, 16:00
Цитата(chief39 @  8.9.2006,  14:14 Найти цитируемый пост)
Погляди стандарты дескриптора и поищи нужные теги

ок. спасибо, попробую поискать

Автор: coolin 12.9.2006, 06:55
Цитата(chief39 @  8.9.2006,  14:14 Найти цитируемый пост)
Всё должно быть в пределах файла... но... поглади в сторону ejb-refs и т.п. в дескрипторах - если верно помню - они именно для того и нужны, чтоб склеивать энтити из разных файлов.


что-то я кроме тега
<jar-file>
ничего не найду в этом направлении. В persistence.xml нет ejb-refs...

Автор: chief39 12.9.2006, 14:30
Хм... мы его вообще не юзаем...
еджиби-джары, джибосс.ксмл, джибосскмп-джидибиси

МНого джаров соединяются в еарку. с помощью аппликейшн.ксмл

Автор: coolin 13.9.2006, 07:42
Цитата(chief39 @  12.9.2006,  14:30 Найти цитируемый пост)
еджиби-джары

а в ejb3?

Автор: chief39 13.9.2006, 09:41
Цитата(coolin @  13.9.2006,  07:42 Найти цитируемый пост)
а в ejb3? 

Не пользуем пока smile

Руки не доходят smile

Скоро постараюсь себе выделить время на сиё

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)