Mule可以运行JavaEE Web应用程序吗?

时间:2013-01-21 13:40:38

标签: java mule

我正在尝试将Java servlet转换为Mule Web服务,但我的程序有多个类。我已经看过很多关于在Java组件中使用POJO和Mule的教程,但从来没有一个包含多个类的程序。怎么办呢?

编辑:我的servlet当前正在tomcat服务器上运行。它接收带有搜索详细信息的xml文档,搜索数据库,然后输出带有搜索结果的xml文档。 xml解析和生成以及数据库连接和查询都由servlet当前处理。我只是希望能够使用Mule运行它,而不是在tomcat服务器上运行它。

1 个答案:

答案 0 :(得分:3)

由于其嵌入式Jetty容器,Mule可以运行JavaEE Web应用程序。

查看与独立发行版捆绑在一起的Bookstore示例,了解它是如何完成的。这个例子确实在Mule独立版中部署了两个web-apps, bookstore bookstore-admin

假设您的网络应用 xmlproc.war ,您在Mule应用程序Zip中需要的布局是:

.
├── mule-config.xml
├── classes
│   ├── <classes and resources from xmlproc/WEB-INF/classes>
├── lib
│   ├── <non-provided libs from xmlproc/WEB-INF/lib>
└── webapps
    └── xmlproc
        ├── <jsps>
        └── WEB-INF
            └── web.xml

使用mule-config.xml:

<?xml version="1.0" encoding="UTF-8"?>
<mule xmlns="http://www.mulesoft.org/schema/mule/core"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xmlns:jetty="http://www.mulesoft.org/schema/mule/jetty"
      xsi:schemaLocation="
        http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
        http://www.mulesoft.org/schema/mule/jetty http://www.mulesoft.org/schema/mule/jetty/current/mule-jetty.xsd">

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

未提供的库意味着您不应该嵌入在$ MULE_HOME / lib /**下找到的库。