mule2.2.x架构(四)示例学习StockQuote
所有的示例文档
http://www.mulesoft.org/display/MULE2INTRO/Examples
本示例参考地址
http://www.mulesoft.org/display/MULE2INTRO/Stock+Quote+Example
3 简单示例StockQuote
3.1 标准IO输入,输出到VM
配置文件stdio-config.xml
<!-- 配置文件中载入提示欢迎信息 -->
<stdio:connector name="SystemStreamConnector"
promptMessageCode="2"
resourceBundle="stockquote.messages.stockquote-messages"
messageDelayTime="1000"/>
<model name="Sample">
<service name="Console I/O">
<inbound>
<!-- 标注IO输入 -->
<stdio:inbound-endpoint system="IN" synchronous="true"/>
</inbound>
<outbound>
<chaining-router>
<!-- 链式输出:输出到VM内部queen -->
<vm:outbound-endpoint path="stockquote"/>
<!-- 链式输出:标准系统输出 -->
<stdio:outbound-endpoint system="OUT"/>
</chaining-router>
</outbound>
</service>
</model>
单独启动这个配置文件,要报错,因为找不到对应的VM stockquote,这个配置文件要和后面的文件配合启动,命令行启动的话:
"%MULE_BASE%\bin\mule.bat" -config "stdio-config.xml,stockquote-rest-config.xml"
"%MULE_BASE%\bin\mule.bat" -config "stdio-config.xml,stockquote-wsdl-config.xml"
"%MULE_BASE%\bin\mule.bat" -config "stdio-config.xml,stockquote-soap-config.xml"
eclipse启动的话,要用Run Configuration---->Configuration Files-----Add
添加多个xml配置文件,然后再Run就OK了。
3.2 输出到REST的服务器
配置文件stockquote-rest-config.xml
<!-- 读取配置文件proxy.properties,配置访问外网的HTTP代理 -->
<context:property-placeholder location="stockquote/proxy.properties"/>
<http:connector name="HttpConnector"
proxyHostname="${proxyHostname}"
proxyPassword="${proxyPassword}"
proxyPort="${proxyPort}"
proxyUsername="${proxyUsername}"/>
<xm:xml-to-object-transformer name="XmlToObject"/>
<xml-entity-decoder-transformer name="XmlDecoder"/>
<xm:xslt-transformer name="Xslt" xsl-file="stockquote/xsl/rest-stock.xsl"/>
<object-to-string-transformer name="ToString"/>
<model name="Sample-Rest">
<service name="HTTPPostSample">
<inbound>
<!-- 结合上面的stdio-config.xml输出的stockquote,这里接收信息 -->
<vm:inbound-endpoint path="stockquote"
responseTransformer-refs="ToString XmlDecoder Xslt XmlToObject" synchronous="true"/>
</inbound>
<http:rest-service-component
serviceUrl="http://www.webservicex.net/stockquote.asmx/GetQuote"
httpMethod="POST">
<http:payloadParameterName value="symbol"/>
</http:rest-service-component>
</service>
</model>
最后的发送向一个REST服务,这个服务是外网的:
http://www.webservicex.net/stockquote.asmx/GetQuote
3.3 发送到SOAP服务的WS上
配置文件stockquote-soap-config.xml,和上面的rest的核心区别就在于最后的发送配置
<outbound>
<pass-through-router>
<axis:outbound-endpoint
address="http://www.webservicex.net/stockquote.asmx?method=GetQuote"
soapAction="#[methodNamespace]#[method]">
<axis:soap-method method="qname{GetQuote:http://www.webserviceX.NET/}">
<axis:soap-parameter parameter="symbol" type="string" mode="IN"/>
<axis:soap-parameter parameter="GetQuoteResult" type="string" mode="OUT"/>
</axis:soap-method>
</axis:outbound-endpoint>
</pass-through-router>
</outbound>
3.4 发送到wsdl
配置文件stockquote-wsdl-config.xml,和前面的核心区别如下
<outbound>
<pass-through-router>
<outbound-endpoint
address="wsdl-cxf:http://www.webservicex.net/stockquote.asmx? WSDL&method=GetQuote" />
</pass-through-router>
</outbound>
但是3.1+3.2;3.1+3.2我都测试成功了,就是3.1+3.3测试失败。但是明白了这个示例的意思,以后可以自己启动一些WS的服务来详细测试。
分享到:
相关推荐
《Mule2.2 BookStore例子学习》 Mule2.2是一款强大的企业级集成平台,主要用于构建应用程序之间的数据和流程集成。在这个BookStore的例子中,我们将深入理解Mule ESB(Enterprise Service Bus)的核心概念和工作...
Mule 2.x 提供了一套全面的工具和框架,用于构建灵活、可扩展的服务架构。通过其独特的设计原则和技术特性,Mule 能够帮助开发者在复杂的 IT 环境中实现高效的服务集成和数据处理。对于那些希望采用现代化集成解决...
GomPlayer类似于KMplayer,同样也是一款来自韩国播放器,界面精美、功能全面。多媒体播放器GOMPlayer... 以‘查找解码’功能来支持所有视频的播放,在BT或e-mule等P2P网站中下载的影片会经常不能播放,GOM Player以独
Mule讲解.docxMule讲解.docx
2) 支持BT或e-mule等P2P站点中接收到损坏的文件, 因中断页传送完成的文件, 索引损坏的AVI文件的播放. 3) 想截取的视频画面可以储存为图像 (JPG, BMP)文件, 还可以通过连续截图取功能来实现把影片的场景以帧为单位, ...
包含http、cxf、vm、sap、activeMq、ftp、file、poll、Smtp、attachment、melExpression、Java、template节点的使用示例等。
弹性APM Mule3代理介绍此插件允许使用Elastic APM监视Mule 3.x组件的应用程序性能。 它提供了一种非侵入性的方式来度量和基准化Mule中的各个流程和步骤,并添加了对Mule组件的应用程序性能监控,以与日志,指标和...
然而,Mule的内部API并未基于JBI标准,而是拥有自己独特的架构设计,这为开发人员提供了更多的自由度和创新空间。 相比之下,ServiceMix的核心在于其JBI基础。作为一款遵循JBI标准的集成平台,ServiceMix旨在提供一...
在“EIP经典案例ESB实践之Mule实现.doc”文档中,你将深入了解到如何使用Mule ESB来实施Load Broker方案,包括具体的配置步骤、示例代码以及最佳实践。通过学习和实践,你可以掌握如何利用Mule ESB优化企业的服务...
【Mule Web Service 示例】 Mule ESB(Enterprise Service Bus)是一种强大的集成平台,它允许开发者轻松地构建和部署分布式应用程序。在这个示例中,我们将深入探讨如何使用Mule来发布Web服务,这是一种允许不同...
四、Mule 介绍 Mule 是一种开源的 ESB 框架,提供了基本的 ESB 功能,包括消息传递、服务集成、数据转换等。Mule 的整体结构包括 Model、Service、Transport、Transformer 等组件。Model 表示托管各个服务的运行时...
《Mule ESB实战:基于mule-2.2.1-src的开发示例解析》 Mule ESB,作为一款强大的企业服务总线(Enterprise Service Bus),在集成和连接不同系统方面展现了卓越的能力。本篇文章将围绕"mule_examples.rar_mule_mule...
附带的源码是书中示例的实现,读者可以下载并跟随书中步骤操作,这将极大地增强学习体验,加深对Mule ESB工作原理的理解。源码的分析和实践将帮助读者掌握实际开发中的技巧和最佳实践。 Mule ESB的强大之处在于其...
The book closes with a set of chapterson the nuts and bolts of working with Mule. Readers can take Mule farther bylearning techniques for testing, performance tuning, BPM orchestration, andeven a ...
【企业服务总线(ESB)】是现代企业IT架构中的关键组成部分,它解决了企业内部“信息孤岛”问题,实现了系统间的高效集成。ESB的出现源于企业对信息共享、系统互操作性和软件重用的迫切需求。随着业务规模的扩大和...
mule 是java 实现ESB 的开源工程, 让你实现牛X的企业总线, 第2版的事mule in action....
INFO 2011-06-22 11:38:01,125 [main] org.mule.module.management.agent.JmxAgent: Registered Endpoint Service with name: Mule.04cd6ac8-9c81-11e0-95b7-8bd1ea0dc252:type=Endpoint,service="HelloWorld",...