Mule3.0开发图解教程

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

环境搭建和例子:Downloadmulestandaloefromwebsite:1.(suchas:D:\mulesl312)InstallingMuleIDEinEclipse3.StartEclipse,andsetupaworkspaceforyourinstallationofMuleifyouhaven'talready.(Makesureyourworkspacedoesnothaveaspaceinthedirectorypath)4.Intheworkbenchview,chooseHelpInstallNewSoftware.5.PresstheAddbuttonnexttotheWorkwithtextbox,enter:YouarenowreadytoconfiguretheMuledistributionasdescribedinthenextsection.ConfigMULE_HOMEandaddbintopath:10.MULE_HOME:D:\mulesl31211.Path:%Path%;%MULE_HOME%\binCreateanewMuleproject:HowtoImportaexistingprojecttoMuleprojectandrunit:thereissomeecamplesinexamplefolderofMULE,wecanimportthemWeneeedtoaddMuleclasspathlibtotheprojectThenwecanruntheprojectonMuleruntimelikeas:Soserverstarts:NFO2011-06-2211:38:01,125[main]org.mule.module.management.agent.JmxAgent:RegisteredEndpointServicewithname:Mule.04cd6ac8-9c81-11e0-95b7-8bd1ea0dc252:type=Endpoint,service=HelloWorld,connector=connector.http.mule.default,name=endpoint.http.localhost.8888INFO2011-06-2211:38:01,125[main]org.mule.module.management.agent.JmxAgent:RegisteredConnectorServicewithnameMule.04cd6ac8-9c81-11e0-95b7-8bd1ea0dc252:type=Connector,name=connector.servlet.mule.default.1INFO2011-06-2211:38:01,125[main]org.mule.module.management.agent.JmxAgent:RegisteredConnectorServicewithnameMule.04cd6ac8-9c81-11e0-95b7-8bd1ea0dc252:type=Connector,name=connector.stdio.mule.default.1INFO2011-06-2211:38:01,125[main]org.mule.module.management.agent.JmxAgent:RegisteredConnectorServicewithnameMule.04cd6ac8-9c81-11e0-95b7-8bd1ea0dc252:type=Connector,name=connector.VM.mule.default.1INFO2011-06-2211:38:01,125[main]org.mule.module.management.agent.JmxAgent:RegisteredConnectorServicewithnameMule.04cd6ac8-9c81-11e0-95b7-8bd1ea0dc252:type=Connector,name=connector.http.mule.default.1INFO2011-06-2211:38:01,140[main]org.mule.DefaultMuleContext:***********************************************************************MuleESBandIntegrationPlatform**Version:3.1.2Build:21975**MuleSoft,Inc.**Formoreinformationgoto****Serverstarted:11-6-22上午11:38**ServerID:04cd6ac8-9c81-11e0-95b7-8bd1ea0dc252**JDK:1.6.0_10-rc2(mixedmode,sharing)**OSencoding:UTF-8,Muleencoding:UTF-8**OS:WindowsXP-ServicePack3(5.1,x86)**Host:PC-201103071221(192.168.40.61)**Mode:Development****AgentsRunning:**JMXAgent***********************************************************************mule-config.xml:inbound-endpointaddress==HttpRequestToNameStringexchange-pattern=request-responsenot-filterwildcard-filterpattern=/favicon.ico//not-filter/inbound-endpoint//所有的转换器都在此,就我理解所有的转换过程其实都要自己写,可以自己定义通用的转换器重用并扩展。访问URL//publicclassChatStringToStringextendsAbstractTransformer父类custom-transformername=StringToNameStringclass=org.mule.example.hello.StringToNameString/custom-transformername=NameStringToChatStringclass=org.mule.example.hello.NameStringToChatString/custom-transformername=ChatStringToStringclass=org.mule.example.hello.ChatStringToString/custom-transformername=HttpRequestToNameStringclass=org.mule.example.hello.HttpRequestToNameString/custom-transformername=ExceptionToStringclass=org.mule.example.hello.ExceptionToString/custom-transformername=HttpRequestToParameterclass=org.mule.transport.servlet.transformers.HttpRequestToParameter/custom-transformername=ObjectToStringclass=org.mule.transformer.simple.ObjectToString/理论和模型:1.简介MuleESB是一个基于Java的轻量级企业服务总线和集成平台,允许开发人员快速便利地连接多个应用,并支持应用间的数据交换。MuleESB支持集成现有系统而无论其底层采用何种技术,如JMS、WebServices、JDBC、HTTP以及其他技术。2.整体结构图整体结构从上图可见,Mule通过Transports/Connectors与外围的异构系统连接,提供Routing(路由)、TransactionManagement(事务管理)、Transformation(转换)、MessageBroker(消息代理)、TransportationManagement(传输管理)、Security(安全)等核心模块。Mule可以单独使用,也可以架设在常用的应用服务器上。图架构简图外围系统的服务请求通过MuleESB的Transport接入,Mule通过Transformer进行数据的格式转换,然后经过InboundRouter进行消息过滤(内部通过配置filter实现)后交给Mule的Component进行业务逻辑处理,处理后的结果通过OutboundRouter确定传递给哪个接收方,然后通过Transformer进行数据格式转换,通过Transport连接至接收方,传递信息。此图描述的是Mule中的一个典型场景的处理过程,涵盖了Mule中的各个关键组件。其中某些处理步骤不是必须的,如InboundRouter、Transformer。后续可以看到一些其他场景的处理。3.功能a.服务中介将业务逻辑和消息发送分离屏蔽服务的消息格式和协议提供任意位置的服务调用提供协议桥接b.数据转换在应用间交换不同格式的信息操作消息的负载内容,包括加密、压缩和编码转换在异构的传输协议的数据类型间格式化消息c.消息路由基于消息内容和复杂规则路由消息消息的过滤、聚合以及重新排列序号d.服务创建和托管暴露端点、EJB、SpringBean以及POJO作为服务作为轻量级的服务容器进行服务托管MuleESB中有一些基本的概念,理解这些基本概念后才能理解Mule的内部机制。从中也可以看到Mule解决问题的基本思路。4.基本概念4.1ModelModel表示托管各个服务的运行时环境。图Model4.2ServiceService是用来处理服务请求的基本单位,它调用各个组件进行服务请求的处理。图Service4.3TransportTransport管理消息的接收和发送,数据转换的过程也是在Transport中通过调用Transformer完成的。图Transport4.3.1ConnectorConnector用于管控特定协议的使用,如HTTPConnector、JMSConnector等。4.3.2End-PointEndpoint用于表示一种协议的特定使用方式,如listening/polling、从中读取、向指定地址

1 / 21
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功