天天看點

将Mule ESB Http項目轉換為Tomcat項目(5) 改造Tomcat

 需要運作ESB項目轉換的web項目的Tomcat最低版本要求是7.0.50,我們使用了7.0.69。Tomcat需要做以下改動:

1)修改conf/server.xml檔案,添加以下代碼:

<Listener className="org.mule.module.tomcat.MuleTomcatListener" />
           

2)在tomcat根目錄下建立名為mule_libs的目錄,将mule studio使用的mule esb運作時環境jar包(除了boot目錄外)拷貝到mule_libs目錄下:

将Mule ESB Http項目轉換為Tomcat項目(5) 改造Tomcat

然後将boot目錄下的以下jar包拷貝到mule_libs/opt目錄下

  • commons-cli-<version>.jar
  • disruptor-<version>.jar
  • jcl-over-slf4j-<version>.jar
  • log4j-jcl-<version>.jar
  • slf4j-api-<version>.jar
  • wrapper-<version>.jar

再将anypoint studio的data weaver plugin下的jar包拷貝到mule_libs/opt目錄下

将Mule ESB Http項目轉換為Tomcat項目(5) 改造Tomcat

3)修改conf/catalina.properties檔案,修改common.loader

common.loader=${catalina.base}/lib,${catalina.base}/lib/*.jar,
${catalina.home}/lib,${catalina.home}/lib/*.jar,
${catalina.home}/opt_lib/*.jar,${catalina.home}/mule-libs/user/*.jar,
${catalina.home}/mule-libs/mule/*.jar,${catalina.home}/mule-libs/opt/*.jar,
${catalina.home}/mule-libs/endorsed/*.jar
           

修改完成後,将系列4生成的war包拷貝到webapps目錄下,啟動tomcat

通路url格式為

http://<host>:<port>/<name-of-war-file>/name-of-servlet-path/name-of-inbound-path

我們的tomcat使用的是預設設定,servlet path設定為/*,流程檔案中設定的inbound endpoint path是Test

是以我們部署的testproject.war包通路的位址是

http://localhost:8080/testproject/Test

我們使用Advanced Rest Client通路這個url

将Mule ESB Http項目轉換為Tomcat項目(5) 改造Tomcat

通路結果和直接通路ESB項目一樣。