Tomcat / Ошибка «Приложение невозможно развернуть, поскольку оно содержит идентификаторы развертывания» - PullRequest
5 голосов
/ 24 ноября 2010

Я столкнулся с проблемой, связанной с развертыванием двух приложений на сервере Tomcat 5. При развертывании и запуске сервера я получаю сообщение об ошибке, которое также не позволяет правильно запустить второе приложение.

Unable to deploy collapsed ear in war /my-app: Exception: Application cannot be deployed as it contains deployment-ids which are in use: 

И после этого есть список всех дублированных идентификаторов. Второе приложение - меньшее, которое добавляется к уже существующему, управляющему всеми объектами. Проект построен Eclipse nad Maven. Есть ли способ добавить зависимость, которая должна быть включена во второе приложение (то, что я собираюсь сделать прямо сейчас), чтобы второе приложение могло знать / использовать уже существующие пакеты?

Спасибо в adnvace за любую поддержку,

Привет

Ответы [ 3 ]

10 голосов
/ 24 ноября 2010

Цитирование из FAQ

DuplicateDeploymentIdException:

Если вы попытаетесь развернуть один и тот же ejb в двух разных веб-приложениях, то вы получите следующееисключение (в файле conf / openejb.log):

org.apache.openejb.DuplicateDeploymentIdException: приложение не может быть развернуто, поскольку оно содержит идентификаторы развертывания, которые используются:

Чтобы устранить проблему,выполните следующее:

  1. Создайте файл с именем system.properties в каталоге conf
  2. Добавьте следующее в файл system.properties и сохраните

    openejb.deploymentId.format = {moduleId} / {ejbName}

Из JIRA , это исправление должно применяться к OpenEJB 3.1

1 голос
/ 05 сентября 2018

Я столкнулся с той же проблемой с apache-tomee-plume-7.0.4 после добавления жидкости в несколько веб-приложений, развернутых в одном контейнере.

эта версия поставляется с собственным файлом system.properties, все, что мне нужно было сделать, это раскомментировать строку, которая определяет свойство, показанное выше.

# openejb.deploymentId.format = {appId}/{ejbJarId}/{ejbName}

После раскомментирования этой строки и восстановления я обнаружил, что проблема исчезла, и других остаточных ошибок у меня не было.

0 голосов
/ 24 ноября 2010

Я не знаю, что это за понятие EAR-файл, но Tomcat не является полноценным сервером приложений Java EE.Это двигатель сервлета / JSP;у него нет возможности иметь дело с EAR.Если вы развертываете EAR или по какой-то причине в вашей WAR есть EAR, вам придется добавить что-то вроде OpenEJB в ваше развертывание Tomcat.

...