将War部署到Mule独立服务器中

将War部署到Mule独立服务器中,mule,Mule,我有一个mule独立服务器,上面有一个我正在开发的应用程序。该应用程序使用的许多服务将在将来从Mule容器迁移到JBoss集群中。因此,我在mule流和Web服务之间保持了很强的分离。但是,从现在开始,我需要将War文件部署在与Mule应用程序相同的服务器上 看来骡子应该能在里面指挥我的战争。有人知道这是否可能吗?我暂时可以将War添加到Mule可部署zip中,但也希望单独部署War。Mule ESB不是标准的Java EE容器,因此无法直接处理War文件。事实上,mule应用程序具有以下结构:

我有一个mule独立服务器,上面有一个我正在开发的应用程序。该应用程序使用的许多服务将在将来从Mule容器迁移到JBoss集群中。因此,我在mule流和Web服务之间保持了很强的分离。但是,从现在开始,我需要将War文件部署在与Mule应用程序相同的服务器上


看来骡子应该能在里面指挥我的战争。有人知道这是否可能吗?我暂时可以将War添加到Mule可部署zip中,但也希望单独部署War。

Mule ESB不是标准的Java EE容器,因此无法直接处理War文件。事实上,mule应用程序具有以下结构:

/
 \- classes                 // application-specific resources(e.g. logging config, properties)
 |- lib                     // application-specific jars
 |- mule-config.xml         // Main Mule configuration file, also monitored for changes
 |- mule-deploy.properties  // Application deployment descriptor (optional)
 |- mule-app.properties     // custom properties to be added to the registry instance used by the application (optional)
正如这里更好地解释的那样:

您可以利用mule jetty连接器公开您的web应用程序。您的连接器配置如下所示:

 <jetty:connector name="jettyConnector">
    <jetty:webapps directory="${app.home}/webapps" port="8083"/>
</jetty:connector>

您将把war文件放入webapps文件夹。您可以使用书店示例作为参考:


这看起来很有希望。。。唯一的问题是,在Jetty连接器启动之前,CXF客户端会崩溃……您是否在您的webapp中导入CXF依赖项?这可能会导致一些类加载问题,因为mule自己提供了cxf,我想这是因为jaxws客户机和WSDL之间的名称不同。它仍然不喜欢干净地取消部署,我下一步必须弄清楚。万一有人碰到这个。。。。将war的lib文件从src/main/apps/webapps/warName/WEB-INF/lib移动到src/main/apps/lib,或者在我的例子中,通过使它们成为Maven依赖项,Jetty完全取消了部署。7号和8号码头似乎在这一区域进行了一些清理。