Я создаю набор служб REST и развертываю каждую службу в отдельный файл WAR. Поскольку каждая из этих служб использует ту же самую конфигурацию сохранения, я поместил мой файл persistence.xml в файл jar (путь файла persistence.xml в банке все еще/META-INF).Как я могу заставить Websphere найти persistence.xml в файле jar, а не META-INF?
При работе с использованием TomEE (1.7) это работает отлично. Однако, когда я пытаюсь сделать то же самое с WebSphere (8.5.5.x), мои единицы сохранения не загружаются. В журнале WebSphere, я получаю ошибку, которая выглядит как:
[4/27/16 8:54:21:653 EDT] 00000080 JPAApplInfo E CWWJP0029E: The server cannot find the MRO_PU_JTA persistence unit in the Customer_WAR.war module and the DS_APP_EAR application. [4/27/16 8:54:21:654 EDT] 00000080 InjectionBind E CWNEN0035E: The ds.services.helper.AbstractServiceHelper/em reference of type javax.persistence.EntityManager for the component in the Customer_WAR.war module of the DS_APP_EAR application cannot be resolved. [4/27/16 8:54:21:657 EDT] 00000080 ResourceInjec E CWOWB0102E: A JCDI error has occurred: The ds.services.helper.AbstractServiceHelper/em reference of type javax.persistence.EntityManager for the null component in the Customer_WAR.war module of the DS_APP_EAR application cannot be resolved.
Когда я копирую файл persistence.xml из моей фляги файла в локальных войнах META-INF, то эта ошибка уходит, и все работает отлично , Поскольку у меня есть тонна услуг для развертывания таким образом, я не хочу делать копии persistence.xml для каждого файла WAR.
Есть ли способ заставить WebSphere найти файл persistence.xml? Может быть, некоторые настройки в WebSphere, которые я не смог найти?
Спасибо.
Возможный дубликат [Совместное использование единицы персистентности по компонентам в .ear-файле] (http://stackoverflow.com/questions/4073635/sharing-a-persistence-unit-across-components-in-a-ear- файл) –