JPA persistence.xml совместно использовать тот же файл JAR - PullRequest
1 голос
/ 03 мая 2010

Мне интересно, могу ли я использовать один и тот же файл jar для нескольких единиц персистентности? Объекты находятся в отдельном файле JAR, но в этом есть объекты для обоих постоянных единиц. Я думаю, что я где-то красный, что я мог бы использовать тег что-то вроде этого: externalEntities.jar # com.mycompany.EntityA чтобы я мог их разделить. Я попробовал это решение, и оно не работает. Теперь я предполагаю, что этого нельзя сделать, чтобы упаковать все сущности (для двух разных постоянных единиц) в один файл JAR.

Что ты думаешь?

1 Ответ

2 голосов
/ 03 мая 2010

Я не уверен, что понял вопрос, но вы пытались объявить свою банку с элементом jar-file. Из спецификации (раздел 6.2.1.6):

Может быть указан один или несколько файлов JAR используя вместо этого jar-file элементы или в дополнение к отображению файлы, указанные в mapping-file элементы. Если указано, эти JAR файлы будут искать управляемые классы постоянства и любое отображение найденные на них аннотации метаданных будут обработаны, или они будут сопоставлены с использованием аннотации сопоставления значения по умолчанию, определенные этим Спецификация. Такие файлы JAR указано относительно корня единица сохранения (например, utils/myUtils.jar).

...

Пример 3:

<persistence-unit name="OrderManagement3">
  <jar-file>order.jar</jar-file>
  <jar-file>order-supplemental.jar</jar-file>
</persistence-unit>

Персистирующая единица имени OrderManagement3 создано. любой аннотированные управляемые классы персистентности найдено в корне упорства единицы добавляются в список управляемых уроки персистенции. Если META-INF/orm.xml файл существует, любой классы и картографическая информация содержащиеся в нем используются как указано выше. order.jar и order-supplemental.jar файлы искал управляемую настойчивость классы и любые аннотированные управляемые в них найдены классы персистентности и / или любые классы, указанные в orm.xml файлы этих файлов jar добавлено. Тип транзакции, данные источник и поставщик, как описано выше.

...