得益于其嵌入式 Jetty 容器,Mule 可以运行 JavaEE 网络应用程序。
查看与独立发行版捆绑在一起的 Bookstore 示例,了解它是如何完成的。这个例子确实在 Mule 中独立部署了两个 Web 应用程序bookstore和bookstore-admin 。
假设你的 web-app 是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/** 下的库。