2012-06-18 71 views
3

我有一个与我正在处理的应用程序有关的独立服务器。此应用程序使用的许多服务将在未来从Mule容器移出到JBoss群集中。因此,我在骡流和Web服务之间保持强有力的分离。但是,现在,我需要将War文件部署到与我的Mule应用程序相同的服务器上。将战争部署到Mule独立服务器

看来骡子应该可以在其中运行我的战争。有谁知道这是否可能?我可以暂时在Mule可部署的zip中添加战争,但也想单独部署战争。

回答

4

Mule ESB不是一个标准的Java EE容器,因此它不会直接处理WAR文件。事实上骡子应用具有以下结构:

/ 
\- 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) 

更好了说明:

http://www.mulesoft.org/documentation/display/MULE3USER/Application+Format

你可以做的就是利用骡子码头连接器暴露你的Web应用程序。您的连接器配置将如下所示:

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

,你将会把你的WAR文件到webapps目录。您可以使用书店例子作为参考:

http://www.mulesoft.org/documentation/display/MULE3EXAMPLES/Bookstore+Example

+0

这看起来很有希望......唯一的问题一直认为CXF客户怪胎的码头连接起来之前.... – RLZaleski

+0

你导入CXF depenendcies在你的webapp?这可能会导致一些类加载问题,因为mule自己提供了cxf – genjosanzo

+0

我认为这是我在jaxws-client和WSDL之间的名称区别。它仍然不喜欢彻底清除,我将不得不在下一个解决。 – RLZaleski