MULE学习笔记1

简介: 1、安装&配置 版本:mule 2.2.1 操作: 1) 下载、解压 2)配置环境变量:MULE_HOME、PATH 3)如果网络环境使用代理,找到%MULE_HOME%/conf目录下,找到wrapper.conf,修改 [java] view plaincopyprint? #wrapper.java.additional.<n&

1、安装&配置

版本:mule 2.2.1

操作:

1) 下载、解压

2)配置环境变量:MULE_HOME、PATH

3)如果网络环境使用代理,找到%MULE_HOME%/conf目录下,找到wrapper.conf,修改

  1. #wrapper.java.additional.<n>=-Dhttp.proxyHost=YOUR_HOST 
  2. #wrapper.java.additional.<n>=-Dhttp.proxyPort=YOUR_PORT 
  3. #wrapper.java.additional.<n>=-Dhttp.proxyUsername=YOUR_USER_NAME 
  4. #wrapper.java.additional.<n>=-Dhttp.proxyPassword=YOUR_PASSWORD 
#wrapper.java.additional.<n>=-Dhttp.proxyHost=YOUR_HOST #wrapper.java.additional.<n>=-Dhttp.proxyPort=YOUR_PORT #wrapper.java.additional.<n>=-Dhttp.proxyUsername=YOUR_USER_NAME #wrapper.java.additional.<n>=-Dhttp.proxyPassword=YOUR_PASSWORD

根据需要修改,其中的<n>是按顺序修改,注意wrapper.conf全文中wrapper.java.additional.后面的序号写到第几,然后继续往下写。

打开cmd输入mule,同意他的声明,然后到example目录下找到echo目录,双击echo.bat,能运行就是安装成功了。

2、Hello world

惯例,第一个mule程序

目标:类似example中的echo,从终端输入信息,返回“hello,[输入的信息]”.

两种方法:

1、通过mule的插件mule IDE

这种方法比较简单。

1)打开Eclipse,更新http://dist.muleforge.org/mule-ide/updates/3.4/,重启,mule IDE就安装好了。

2)window-》preferences-》mule-》add-》找到你的mule目录-》apply-》ok

3)新建一个mule project

4)新建一个interface:

  1. package demo.mule.umo; 
  2.  
  3. public interface HelloWorld { 
  4.     public String sayHello(String str); 
  5.      
package demo.mule.umo; public interface HelloWorld { public String sayHello(String str); }

5)实现类:

  1. package demo.mule.umo.impl; 
  2. import demo.mule.umo.HelloWorld; 
  3. public class HelloWorldImpl implements HelloWorld { 
  4.     @Override 
  5.     public String sayHello(String str) { 
  6.         return "Hello," + str; 
  7.     } 
package demo.mule.umo.impl; import demo.mule.umo.HelloWorld; public class HelloWorldImpl implements HelloWorld { @Override public String sayHello(String str) { return "Hello," + str; } }

6)配置config文件

在项目的conf目录中添加XXXX.xml(文件名依照实际),mule的配置文件和spring非常类似,所以配置起来非常方便,ide的提示功能也能很好的实现。由于需要重终端输入,因此,需要配置标准的使用stdio。如下配置:

  1. <?xml version="1.0" encoding="UTF-8"?> 
  2. <mule xmlns="http://www.mulesource.org/schema/mule/core/2.2" 
  3.        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  4.        xmlns:stdio="http://www.mulesource.org/schema/mule/stdio/2.2" 
  5.     xsi:schemaLocation=" 
  6.        http://www.mulesource.org/schema/mule/core/2.2 http://www.mulesource.org/schema/mule/core/2.2/mule.xsd 
  7.        http://www.mulesource.org/schema/mule/stdio/2.2 http://www.mulesource.org/schema/mule/stdio/2.2/mule-stdio.xsd"> 
  8.     <stdio:connector name="SystemStreamConnector"     
  9.         promptMessage="Please enter yout name: " messageDelayTime="1000"/>  
  10.          
  11.     <model name="HelloSample">       
  12.         <service name="HelloUMO">     
  13.             <inbound>     
  14.                 <stdio:inbound-endpoint system="IN" />    
  15.             </inbound>                
  16.             <component class="demo.mule.umo.impl.HelloWorldImpl"/>     
  17.      
  18.             <outbound>     
  19.                 <pass-through-router>     
  20.                     <stdio:outbound-endpoint system="OUT" />     
  21.                 </pass-through-router>     
  22.             </outbound>     
  23.         </service>           
  24.     </model> 
  25.      
  26. </mule> 
<?xml version="1.0" encoding="UTF-8"?> <mule xmlns="http://www.mulesource.org/schema/mule/core/2.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:stdio="http://www.mulesource.org/schema/mule/stdio/2.2" xsi:schemaLocation=" http://www.mulesource.org/schema/mule/core/2.2 http://www.mulesource.org/schema/mule/core/2.2/mule.xsd http://www.mulesource.org/schema/mule/stdio/2.2 http://www.mulesource.org/schema/mule/stdio/2.2/mule-stdio.xsd"> <stdio:connector name="SystemStreamConnector" promptMessage="Please enter yout name: " messageDelayTime="1000"/> <model name="HelloSample"> <service name="HelloUMO"> <inbound> <stdio:inbound-endpoint system="IN" /> </inbound> <component class="demo.mule.umo.impl.HelloWorldImpl"/> <outbound> <pass-through-router> <stdio:outbound-endpoint system="OUT" /> </pass-through-router> </outbound> </service> </model> </mule>

7)运行,运行有两种方法:

(1)右击你的XXXX.xml-》run as-》mule server

(2)新建一个类,如下:

  1. package demo.main; 
  2. import org.mule.api.MuleContext; 
  3. import org.mule.api.MuleException; 
  4. import org.mule.api.config.ConfigurationException; 
  5. import org.mule.api.context.MuleContextFactory; 
  6. import org.mule.api.lifecycle.InitialisationException; 
  7. import org.mule.config.spring.SpringXmlConfigurationBuilder; 
  8. import org.mule.context.DefaultMuleContextFactory; 
  9. public class MuleMain { 
  10.     public static void main(String[] args) throws ConfigurationException, 
  11.             InitialisationException { 
  12.         try
  13.             String configFile = "sudIo-config.xml"
  14.             String[] configFileArr = new String[] { configFile }; 
  15.             MuleContextFactory muleContextFactory = new DefaultMuleContextFactory(); 
  16.             MuleContext context = muleContextFactory 
  17.                     .createMuleContext(new SpringXmlConfigurationBuilder( 
  18.                             configFileArr)); 
  19.             context.start(); 
  20.         } catch (MuleException t) { 
  21.             t.printStackTrace(); 
  22.         } 
  23.     } 
package demo.main; import org.mule.api.MuleContext; import org.mule.api.MuleException; import org.mule.api.config.ConfigurationException; import org.mule.api.context.MuleContextFactory; import org.mule.api.lifecycle.InitialisationException; import org.mule.config.spring.SpringXmlConfigurationBuilder; import org.mule.context.DefaultMuleContextFactory; public class MuleMain { public static void main(String[] args) throws ConfigurationException, InitialisationException { try { String configFile = "sudIo-config.xml"; String[] configFileArr = new String[] { configFile }; MuleContextFactory muleContextFactory = new DefaultMuleContextFactory(); MuleContext context = muleContextFactory .createMuleContext(new SpringXmlConfigurationBuilder( configFileArr)); context.start(); } catch (MuleException t) { t.printStackTrace(); } } }

不要急着运行,右击项目-》properties-》java build path-》source-》add Folder-》把conf目录添加到classpath中-》OK

然后就可以运行文件了。

2、通过maven构建项目

1)新建一个maven项目,在pom中加入以来,例如该项目中你需要使用stdio,那只要加入这个和spring-config的依赖就行了

如下配置:

  1. <?xml version="1.0" encoding="UTF-8"?> 
  2. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  3.          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
  4.     <modelVersion>4.0.0</modelVersion> 
  5.     <groupId>mule</groupId> 
  6.     <artifactId>mule</artifactId> 
  7.     <packaging>jar</packaging> 
  8.     <version>1.0</version> 
  9.     <properties> 
  10.         <muleVersion>2.2.1</muleVersion> 
  11.     </properties> 
  12.     <dependencies> 
  13.         <dependency> 
  14.             <groupId>org.mule.modules</groupId> 
  15.             <artifactId>mule-module-spring-config</artifactId> 
  16.             <version>${muleVersion}</version> 
  17.         </dependency> 
  18.         <dependency> 
  19.             <groupId>org.mule.transports</groupId> 
  20.             <artifactId>mule-transport-stdio</artifactId> 
  21.             <version>${muleVersion}</version> 
  22.         </dependency> 
  23.     </dependencies> 
  24. </project> 
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>mule</groupId> <artifactId>mule</artifactId> <packaging>jar</packaging> <version>1.0</version> <properties> <muleVersion>2.2.1</muleVersion> </properties> <dependencies> <dependency> <groupId>org.mule.modules</groupId> <artifactId>mule-module-spring-config</artifactId> <version>${muleVersion}</version> </dependency> <dependency> <groupId>org.mule.transports</groupId> <artifactId>mule-transport-stdio</artifactId> <version>${muleVersion}</version> </dependency> </dependencies> </project>

OK。其他和第一步一样。

至此,一个简单的mule应用就搞定了。

目录
相关文章
|
Java
ES6 学习笔记一
ES6 学习笔记一
64 0
|
8月前
|
Java
es 学习笔记
es 学习笔记
45 1
|
8月前
|
JavaScript
使用TS的一些基础知识
使用TS的一些基础知识
94 0
|
8月前
|
JavaScript 前端开发 编译器
ts面试题总结
ts面试题总结
132 0
|
SQL 分布式计算 Shell
DolphinScheduler教程(01)- 入门(下)
DolphinScheduler教程(01)- 入门(下)
586 0
|
分布式计算 应用服务中间件 持续交付
DolphinScheduler教程(01)- 入门(上)
DolphinScheduler教程(01)- 入门(上)
989 0
|
JavaScript 前端开发 开发者
ts知识点
ts知识点
61 0
|
JavaScript
ES6 学习笔记二
ES6 学习笔记二
47 0
|
JavaScript 前端开发 IDE
TS知识点
TS知识点
|
JSON API 数据格式
ES7学习笔记(三)新建索引
与ES的交互方式 与es的交互方式采用http的请求方式,请求的格式如下: curl -X '://:/?' -d '' 是请求的方法,比如:GET、POST、DELETE、PUT等。
2978 0
ES7学习笔记(三)新建索引