У меня есть приложение Spring MVC, которое использует openjpa 2.1.1 в качестве своей среды сохранения. Он разработан как проект Maven в STS и работает локально на vFaric TC Server (Tomcat 7).
Когда мы впервые развернули войну в Websphere 8.5, мы столкнулись с конфликтами загрузчика классов со следующими тремя файлами jar openjpa, которые были в нашем файле войны:
geronimo-jpa_2.0_spec-1.1.jar geronimo-jta_1.1_spec-1.1.1.jar проверка API-1.0.0.GA.jar
Удаление их из войны и отсрочка до связанного openjpa Websphere сработало нормально, поэтому я изменил область зависимостей POM openjpa с «компилировать» на «предоставлено» (чтобы эти jar-файлы не были упакованы в файл войны).
Поскольку Tomcat 7 не совместим с Java EE, я поместил 3 jar-файла в Tomcat\lib (также попробовал библиотеку vfabric-tc-server, которая обертывает tomcat), но классы JPA не были видны приложению при запуске (исключения noclassdeffound в приставка).
Я также попытался добавить банки в путь к классам сервера из «конфигурации запуска» в STS - и там не повезло.
Есть ли порядок загрузчика классов, который необходимо установить где-то в Tomcat, чтобы JPA загружался перед приложением?
Мне нужна сборка, которая будет работать при развертывании на Tomcat или Websphere.
Любая помощь будет высоко ценится.