Загрузить файл persistence.xml из aar в tomcat - PullRequest
1 голос
/ 21 января 2011

У меня есть проект на основе openJPA, который мне нужно развернуть в формате aar в следующую папку под Tomcat.

кот \ WebApps \ axis2 \ WEB-INF \ услуги

Но, похоже, служба не может загрузить файл persistence.xml в папку META-INF в файле aar . Я нашел решение переименовать файл aar в jar , например, DummySerivce.aar -> DummySerivce.jar, а затем поместить DummySerivce.jar в папку lib, чтобы он был точно

кот \ WebApps \ axis2 \ WEB-INF \ Lib

На этот раз файл persistence.xml мог быть загружен, и служба работала хорошо. Но это излишне импортировало файл jar, который не был включен в спецификацию.

Итак, мой вопрос: есть ли способ загрузить файл persistence.xml из файла aar ? Можно ли перегрузить путь к файлу persistence.xml в коде?

Кстати, в файле persistence.xml остается только информация об объекте, параметры подключения к базе данных уже определены в коде, и я использую Axis2.

Спасибо!

1 Ответ

4 голосов
/ 21 января 2011

Я нашел решение.

Если добавить следующую строку в services.xml, файл persistence.xml, упакованный в файл aar, может быть успешно загружен.

<parameter name="ServiceTCCL">composite</parameter>

для подробной информации. пожалуйста, обратитесь к http://wso2.org/node/1131

Теперь проверяем, есть ли побочные эффекты.

TCCL - Загрузчик класса контекста потока

  • по умолчанию - статус-кво, нормальное поведение
  • композит - TCCL содержит все баночки из окружения (скажем, webapp) и те, которые указаны в
  • обслуживание файл архива (aar) в службе / lib - TCCL содержит все файлы из сервисный архив (аар)
...