2010-11-24 187 views
4

我面临与在Tomcat 5服务器上部署两个应用程序有关的问题。 部署和运行服务器时,我收到一条错误消息,这也会阻止第二个应用程序正常运行。Tomcat /“应用程序无法部署,因为它包含部署ID”错误

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

之后有一个所有重复ID的列表。第二个应用程序是一个较小的应用程序,它被添加到管理所有实体的现有应用程序中。该项目由Eclipse nad Maven构建。有没有一种方法可以添加应该包含在第二个应用程序中的依赖关系(我现在打算这么做),以便第二个应用程序能够知道/使用已经存在的包?

感谢您在adnvace任何支持,

问候

回答

7

报价from the FAQ

DuplicateDeploymentIdException:

如果试图在 部署相同的EJB两个不同的Web应用程序,那么 你会得到下面的异常 (在CONF/openejb.log) :

org.apache.openejb.DuplicateDeploymentIdException: 应用程序无法部署,因为它 contai NS部署的IDS这些都是 使用:

要解决此问题,请执行以下操作:

  1. 创建一个文件的conf目录
  2. 下名为system.properties添加以下的system.properties文件并保存

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

the JIRA,此修复程序应适用于OpenEJB的3.1

0

我不知道EAR文件的这一概念是什么,但Tomcat是不是一个完整的Java EE应用服务器。它是一个servlet/JSP引擎;它无法处理EAR。如果您正在部署EAR,或者由于某种原因您的WAR中包含EAR,则必须在Tomcat部署中添加OpenEJB之类的东西。

+0

对不起,我忘了补充,当然我们也有加入的Tomcat – redbull 2010-11-24 10:42:59

+0

OpenEJB的3.1感谢您的澄清。 – duffymo 2010-11-24 10:48:10