现在的位置: 首页 > 综合 > 正文

Mule 官方例子研究

2012年05月03日 ⁄ 综合 ⁄ 共 2310字 ⁄ 字号 评论关闭

Mule 官方例子研究

一、编译导入Mule自带的例子

1.准备

安装Mule。这里就不介绍mule的安装了,请参考《Mule安装部署手册》。

2. 编译Mule自带例子中的Hello例子

使用命令行到目录:D:\app\mule3.1.1\examples\hello下,输入:mvn 即可。这里需要安装Maven

3. 导入Eclipse工程

输入命令:mvn eclipse:eclipse 成功后,即可导入eclipse

4.导入这个工程到eclipse

(1)选择:File > Import

(2)选择:展开“General 选择“Existing Projects into Workspace

(3)选择Browse,导入后,选择Finish。完成。

5.配置Elipse工程(build path)

(1)右击工程,选择“Build Path ->Configure Build:

 

(2)选择“Libraries->Add Library

(3)点击“User Library”,点击“Next

(4)点击“User Libraries”,点击“New

(5)输入:MULE_LIB,点击“OK

(6)点击“Add JARs”,选择Mule主目录下的 \lib\mule,选择所有的jar包,点击“Open

(7)点击“OK”,点击“Finish

(8)点击“Add Variable”,点击“Configure Variables”,点击“New

(9)输入:M2_REPO,选择一个目录。默认地,Maven会在刚才使用mvn命令编译时,

把下载的jar包放到:C:\Documents and Settings\Administrator\.m2\repository 目录下,Administrator是我的用户名,这里我设置的目录是C:\.m2\repository,你可以把那个目录下的所有copy到这个目录下。 点击“Folder”,选择C:\.m2\repository

 

(10)点击“OK”,点击“yes”,点击“OK”。设置完成。

6.运行这个工程

 (1)右击工程,选择“Run->Run Configurations

(2)双击“Java Application”,把名字改为:Hello,选择main class为:org.mule.MuleServer

   如图:

              (3)Arguments选项表中,在Program Arguments框中输入-config conf\hello-config.xml

(4)点击“Apply”,“Run”。运行例子,如图:

 

备注:

运行“Run as Mule Server”报错“A Mule runtime distribution must be configured”的解决办法:在eclipseclasspath界面里面添加libray ;右键工程---->properties----->Java Build Path----->Libraries------>Add Library------>Mule Classpath

二、ECHO例子分析

2.1概述

这个演示了“如何通过使用一个简单的web service flow,让我们了解Mule ESB 组件;在这个例子中,这个组件被了解是通过使用CXF JAX-WS web Service.

 

(上图描述了MULE2.X 的内容。System Stream Connector Axis Soap Connector已经被普通的http Connector替换,服务通过使用CXF被从新实现,用来处理Soap的请求和响应);

上图说明:

1、  通过两种方式接入(红色线):一个是System.in, 一个是Soaphttp)方式

2、  每种接入都可以通过接入器(Connector)经过NMR(Normalized Message Router)规范化的消息路由转发后,进行输出,目前通过两种方式:System.out Soap(http)方式。

2.2运行应用

简单的拷贝预构建的档案资料(mule-example-echo.zip)到应用文件夹($MULE_HOME/apps),并启动mule。去通过浏览器访问web service 调用:

http://localhost:65082/services/EchoUMO/echo/text/hello

        通过在控制台按“CTR-C”停止mule;

2.3编译例子

依靠你正在使用的编译工具(Ant or Maven) ,你能够通过简单的运行”ant” ”mvn”去编译样例,这将编译样例的类文件,产生一个应用的zip文件,拷贝这个zip文件到  $MULE_HOME/apps.

2.4 The Echo 组件

Echo Service 是基于一个POJO 组件,该组件是使用JAX-WS 注解方式被注解,并作为一个web service 被暴露出来,该Web Service 是在MULE 使用基于流的配置之上的。组建的初始化如下:

public class Echo

{

    public String echo(String string)

    {

        return string;

    }

}

通过增加JAX-WS注解的方法,我们能把该类方法发布成一个web service, 并具体说明输入参数和响应是怎样被映射的。

@WebService

public class Echo

{

    @WebResult(name="text")

    public String echo(@WebParam(name="text") String string)

    {

        return string;

    }

抱歉!评论已关闭.