CN103944956B - 网络服务代理方法 - Google Patents
网络服务代理方法 Download PDFInfo
- Publication number
- CN103944956B CN103944956B CN201410085224.7A CN201410085224A CN103944956B CN 103944956 B CN103944956 B CN 103944956B CN 201410085224 A CN201410085224 A CN 201410085224A CN 103944956 B CN103944956 B CN 103944956B
- Authority
- CN
- China
- Prior art keywords
- message
- esb
- web service
- node
- service
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供一种网络服务代理方法,该网络服务代理方法通过企业服务总线ESB在外部网络服务(Web service)和内部网络服务(Web service)之间交互信息以解决信息孤岛问题。
Description
技术领域
本发明涉及一种网络服务代理方法。
背景技术
网络服务(Web service)平台需要一套协议来实现分布式应用程序的创建。任何平台都有它的数据表示方法和类型系统。要实现互操作性,网络服务(Web service)平台必须提供一套标准的类型系统,用于沟通不同平台、编程语言和组件模型中的不同类型系统。目前这些协议有:
可扩展标记语言(Extensible Markup Language,XML)是标准通用标记语言(Standard Generalized Markup Language,SGML)的一种。XML简单易用,是当前处理结构化文档信息的有力工具。XML具有跨平台的特性,是一种依赖于内容的技术,这使得XML为越来越多的应用程序所支持,成为了应用程序之间数据交换的唯一公共语言。
简单对象访问协议(Simple Object Access Protocol,SOAP),一个基于XML的可扩展消息信封格式,需同时绑定一个传输用协议。这个协议通常是超文本转移协议(HTTP-Hypertext transfer protocol,HTTP)或超文本传输安全协议(Hypertext TransferProtocol over Secure Socket Layer,HTTPS),但也可能是简单邮件传输协议(SimpleMail Transfer Protocol,SMTP)或可扩展通讯和表示协议(The Extensible Messagingand Presence Protocol,XMPP)。
网络服务描述语言,(Web Services Description Language,WSDL),一个XML格式文档,用以描述服务端口访问方式和使用协议的细节。通常用来辅助生成服务器和客户端代码及配置信息。
由于网络服务(Web service)良好的跨平台性,因而在企业内部会使用大量 的网络服务(Web service)将内部的功能发布供访问。单个企业网络服务(Web service)形成一个个信息孤岛。随着企业的发展变化,某个内部使用的网络服务(Web service)要被外部访问,因此有必要提供一种方法解决信息孤岛问题。
发明内容
针对现有技术存在的缺陷,本发明的目的在于提供一种解决信息孤岛问题的方法。
为解决以上技术问题,本发明提供的技术方案是,一种网络服务代理方法,其特征在于:所述网络服务代理方法包括以下步骤:
(1)提供网络服务(Web Service)适配器发布ESB信息时所需的WSDL文件,以及ESB调用企业已存在的网络服务(Web Service)所需要的WSDL文件或者地址;
(2)网络服务(Web Service)适配器利用SOAPUI工具根据WSDL文件或者地址生成消息模板;
(3)企业服务总线ESB形成ESB消息格式转换的XSL映射文件;
(4)网络服务(Web Service)适配器的发布节点发布ESB信息;
(5)Jetty(一种Servlet引擎)作为发布服务的应用服务器,监听网络服务(WebService)的发布节点的地址;
(6)企业服务总线ESB的中介器的处理节点读取消息格式转换的XSL映射文件,将标准ESB消息进行数据格式转换,并发送到内部网络服务(Web Service)适配器的调用节点;
(7)内部网络服务(Web Service)适配器的调用节点收到经过格式转换的ESB消息后,提取出数据,然后再根据SOAP请求消息模板,动态组装出标准SOAP请求消息;
(8)内部网络服务(Web Service)的适配器的调用节点利用Http Client将标准SOAP请求消息作为POST请求数据发送给内部网络服务(Web Service)并接收响应;
(9)内部网络服务(Web Service)接受标准SOAP请求消息并作出响应;
(10)内部网络服务(Web Service)适配器的调用节点将响应封装成标准的ESB消息。为了标识消息的来源,消息使用唯一的响应ID,将该消息发送到下一个节点;
(11)企业服务总线ESB的中介器的处理节点读取ESB消息的XSL映射文件,进行数据格式的转换或者聚合,然后将数据发送到网络服务(Web Service)的适配器的发布节点;
(12)网络服务(Web Service)的适配器的发布节点收到来自ESB的响应消息后,提取出数据以及响应ID,根据响应ID唤醒睡眠处理线程并将响应数据传递给睡眠处理线程。
优选的,所述企业服务总线ESB中需要根据ESB消息的流动方向生成ESB消息格式转换的XSL映射文件。
优选的,所述ESB消息格式转换的初始点为来源消息,ESB消息的终端点为目标信息,企业服务总线ESB根据SOAP请求消息模板、SOAP响应消息模板生成ESB消息格式转换的XSL映射文件。
优选的,针对服务代理功能,所述ESB消息从发布到调用过程中,源消息为发布节点SOAP请求消息模板;目的消息为调用节点的SOAP请求消息模板;从调用到发布过程中,源消息为调用节点的SOAP响应模板。目的消息是发布节点的SOAP响应模板。
优选的,针对服务组合,所述ESB消息从发布到调用过程中,源消息为发布节点的SOAP请求消息模板;目的消息为调用节点的SOAP请求消息模板;从调 用到发布过程中,源消息是多个调用节点的SOAP响应消息模板的合成消息。目的消息是发布节点的SOAP响应消息模板。
与现有技术相比,本发明至少具有如下技术效果:本发明通过上述网络服务代理方法解决了信息孤岛问题。
附图说明
图1为本发明网络服务代理方法的ESB流程图。
图2为企业服务总线Web服务组合流程图。
图3为企业服务总线Web服务组合和代理过程示意图。
图4为SOAP请求消息转换示意图。
图5为SOAP响应消息转换或聚合示意图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本发明。但是本发明能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
参见图1~图5,示出本发明一个实施例。
在下面的描述中阐述了很多具体细节以便于充分理解本发明。但是本发明能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
参见图1~图5,示出本发明一个实施例。
企业服务总线(Enterprise Service Bus,ESB)作为面向服务体系架构(ServiceOriented Architecture,SOA)的核心框架,是企业异构应用交互的基础平台。企业服务总线ESB具有高效、全面、灵活的特性,是解决信息孤岛的有效手段。企业服务总线ESB主要提供服务或应用的接入、服务或应用消息的路由、消息的转换、以及消息安全可靠地传递。企业服务总线ESB在实现服务或异构系统间可靠交互 的同时,保持它们的松散耦合关系。企业服务总线ESB的定义可以理解为:由中间技术实现并支持面向服务体系架构SOA的一种基础架构,支持异构环境中的服务、消息以及事件的交互,并且具有适当的服务级别和管理性。企业服务总线ESB可以实现应用系统的快速接入。企业服务总线ESB具有高级的事件、流程处理能力,能够很好的将企业信息系统与实际业务协调起来。同时,在保证原有投资的条件下,实现更加灵活和敏捷的企业信息系统改造。
企业服务总线ESB中具有多种功能的节点,例如用于发布、调用、处理等各种动作的节点。
企业服务总线ESB包括网络服务(Web Service)适配器和中介器。
本发明提供一种网络服务代理方法包括以下步骤:
(1)提供网络服务(Web Service)适配器发布ESB信息时所需的WSDL文件,以及ESB调用企业已存在的网络服务(Web Service)所需要的WSDL文件或者地址。
(2)网络服务(Web Service)适配器利用SOAPUI工具根据WSDL文件或者地址生成消息模板。消息模板包括SOAP请求消息模板、SOAP响应消息模板。
(3)企业服务总线ESB形成ESB消息格式转换的XSL映射文件。
由于企业服务总线ESB中的中介器处理的ESB消息格式不同,因此当ESB消息在不同中介器之间流动时,需要由企业服务总线ESB的中介器根据XSL映射文件中包含的映射关系对ESB消息的格式进行转换。企业服务总线ESB中需要根据ESB消息的流动方向生成ESB消息格式转换的XSL映射文件。ESB消息格式转换的初始点为来源消息,终端点为目标信息。企业服务总线ESB根据SOAP请求消息模板、SOAP响应消息模板生成ESB消息格式转换的XSL映射文件。
针对服务代理功能,ESB消息从发布到调用过程中,源消息为发布节点SOAP请求消息模板。目的消息为调用节点的SOAP请求消息模板。从调用到发布过程 中,源消息为调用节点的SOAP响应模板。目的消息是发布节点的SOAP响应模板。
针对服务组合,从发布到调用的过程中,源消息为发布节点的SOAP请求消息模板。目的消息为调用节点的SOAP请求消息模板。从调用到发布过程中,源消息是多个调用节点的SOAP响应消息模板的合成消息。目的消息是发布节点的SOAP响应消息模板。
(4)网络服务(Web Service)适配器的发布节点发布ESB信息。
(5)Jetty(一种Servlet引擎)作为发布服务的应用服务器,监听网络服务(WebService)的发布节点和地址。当Jetty应用服务器监听到来自外部的访问请求时,Jetty服务器新建处理线程,处理线程判断请求的类型。若请求类型是GET请求,则处理线程直接将WSDL文件作为响应消息体返回。若请求类型为POST请求,则处理线程提取出数据,并将数据封装成标准ESB消息。在分布式企业服务总线ESB中ESB消息是异步的,为标识消息的唯一来源,消息使用唯一的身份识别ID,然后发往下一个节点并睡眠等待响应。
(6)企业服务总线ESB的中介器的处理节点读取ESB消息的XSL映射文件,将标准ESB消息进行数据格式转换,并发送到内部网络服务(Web Service)的中介器的调用节点。
(7)内部网络服务(Web Service)适配器的调用节点收到经过格式转换的ESB消息后,提取出数据,然后再根据SOAP请求消息模板,动态组装出标准SOAP请求消息。
(8)内部网络服务(Web Service)适配器的调用节点利用Http Client将标准SOAP请求消息作为POST请求数据发送给内部网络服务(Web Service)并接收响应。
(9)内部网络服务(Web Service)接受标准SOAP请求消息并作出响应。
(10)内部网络服务(Web Service)适配器的调用节点将响应封装成标准的ESB消息。为了标识消息的来源,消息使用唯一的响应ID,将该消息发送到下一个节点。
(11)企业服务总线ESB的中介器的处理节点读取ESB消息的XSL映射文件,进行数据格式的转换或者聚合,然后将数据发送到网络服务(Web Service)的适配器的发布节点。
(12)网络服务(Web Service)的适配器的发布节点收到来自ESB的响应消息后,提取出数据以及响应ID,根据响应ID唤醒睡眠处理线程并将响应数据传递给睡眠处理线程。处理线程根据中的SOAP响应消息模板组装标准SOAP响应消息并将其返回给外部的服务调用者。
本发明虽然以较佳实施例公开如上,但其并不是用来限定本发明,任何本领域技术人员在不脱离本发明的精神和范围内,都可以做出可能的变动和修改,因此本发明的保护范围应当以本发明权利要求所界定的范围为准。
Claims (5)
1.一种网络服务代理方法,其特征在于:所述网络服务代理方法包括以下步骤:
(1)提供网络服务(Web Service)适配器发布ESB信息时所需的WSDL文件,以及ESB调用企业已存在的网络服务(Web Service)所需要的WSDL文件或者地址;
(2)网络服务(Web Service)适配器利用SOAPUI工具根据WSDL文件或者地址生成消息模板;
(3)企业服务总线ESB形成ESB消息格式转换的XSL映射文件;
(4)网络服务(Web Service)适配器的发布节点发布ESB信息;
(5)Jetty作为发布服务的应用服务器,监听网络服务(WebService)的发布节点的地址;
(6)企业服务总线ESB的中介器的处理节点读取ESB消息格式转换的XSL映射文件,将标准ESB消息进行数据格式转换,并发送到内部网络服务(WebService)适配器的调用节点;
(7)内部网络服务(Web Service)适配器的调用节点收到经过格式转换的ESB消息后,提取出数据,然后再根据SOAP请求消息模板,动态组装出标准SOAP请求消息;
(8)内部网络服务(Web Service)适配器的调用节点利用Http Client将标准SOAP请求消息作为POST请求数据发送给内部网络服务(Web Service)并接收响应;
(9)内部网络服务(Web Service)接受标准SOAP请求消息并作出响应;
(10)内部网络服务(Web Service)适配器的调用节点将响应封装成标准的ESB消息。为了标识消息的来源,消息使用唯一的响应ID,将该消息发送到下一个节点;
(11)企业服务总线ESB的中介器的处理节点读取ESB消息的XSL映射文件,进行数据格式的转换或者聚合,然后将数据发送到网络服务(Web Service)的适配器的发布节点;
(12)网络服务(Web Service)的适配器的发布节点收到来自ESB的响应消息后,提取出数据以及响应ID,根据响应ID唤醒睡眠处理线程并将响应数据传递给睡眠处理线程。
2.根据权利要求1所述的网络服务代理方法,其特征在于:所述企业服务总线ESB中需要根据ESB消息的流动方向生成ESB消息格式转换的XSL映射文件。
3.根据权利要求2所述的网络服务代理方法,其特征在于:所述ESB消息格式转换的初始点为来源消息,终端点为目标信息,企业服务总线ESB根据SOAP请求消息模板、SOAP响应消息模板生成ESB消息格式转换的XSL映射文件。
4.根据权利要求2所述的网络服务代理方法,其特征在于:针对服务代理功能,所述ESB消息从发布到调用过程中,源消息为发布节点SOAP请求消息模板;目的消息为调用节点的SOAP请求消息模板;从调用到发布过程中,源消息为调用节点的SOAP响应模板,目的消息是发布节点的SOAP响应模板。
5.根据权利要求2所述的网络服务代理方法,其特征在于:针对服务组合,所述ESB消息从发布到调用过程中,源消息为发布节点的SOAP请求消息模板,目的消息为调用节点的SOAP请求消息模板;从调用到发布过程中,源消息是多个调用节点的SOAP响应消息模板的合成消息,目的消息是发布节点的SOAP响应消息模板。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410085224.7A CN103944956B (zh) | 2014-03-10 | 2014-03-10 | 网络服务代理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410085224.7A CN103944956B (zh) | 2014-03-10 | 2014-03-10 | 网络服务代理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103944956A CN103944956A (zh) | 2014-07-23 |
CN103944956B true CN103944956B (zh) | 2017-06-20 |
Family
ID=51192437
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410085224.7A Active CN103944956B (zh) | 2014-03-10 | 2014-03-10 | 网络服务代理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103944956B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105141674B (zh) * | 2015-08-07 | 2018-06-22 | 北京思特奇信息技术股份有限公司 | 一种能力接入方法及系统 |
CN106713464B (zh) * | 2016-12-27 | 2019-12-13 | 山东中创软件商用中间件股份有限公司 | 一种企业服务总线的服务管理方法及装置 |
CN106998277B (zh) * | 2017-05-25 | 2019-08-06 | 浙江数链科技有限公司 | Web服务测试方法和装置 |
CN110636127B (zh) * | 2019-09-20 | 2022-07-01 | 大唐融合通信股份有限公司 | 一种各信息数据间的通信处理方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1723460A (zh) * | 2003-04-12 | 2006-01-18 | 国际商业机器公司 | 访问web服务 |
CN1967485A (zh) * | 2006-06-20 | 2007-05-23 | 华为技术有限公司 | 一种实现j2ee应用的方法及系统 |
CN101339520A (zh) * | 2007-12-04 | 2009-01-07 | 浙江大学 | 一种将ejb接入企业服务总线的方法 |
CN101621516A (zh) * | 2009-08-10 | 2010-01-06 | 浙江大学 | 一种企业服务总线与外部Web服务的交互方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7373424B2 (en) * | 2002-03-28 | 2008-05-13 | Sap Ag | Exactly once protocol for message-based collaboration |
-
2014
- 2014-03-10 CN CN201410085224.7A patent/CN103944956B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1723460A (zh) * | 2003-04-12 | 2006-01-18 | 国际商业机器公司 | 访问web服务 |
CN1967485A (zh) * | 2006-06-20 | 2007-05-23 | 华为技术有限公司 | 一种实现j2ee应用的方法及系统 |
CN101339520A (zh) * | 2007-12-04 | 2009-01-07 | 浙江大学 | 一种将ejb接入企业服务总线的方法 |
CN101621516A (zh) * | 2009-08-10 | 2010-01-06 | 浙江大学 | 一种企业服务总线与外部Web服务的交互方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103944956A (zh) | 2014-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10693746B2 (en) | Instrumentation and monitoring of service level agreement (SLA) and service policy enforcement | |
US7934252B2 (en) | Filtering technique for processing security measures in web service messages | |
US8219970B2 (en) | XML push and remote execution of a wireless applications | |
US7958515B2 (en) | Publish/subscribe mechanism for web services | |
CN103944956B (zh) | 网络服务代理方法 | |
WO2017076259A1 (zh) | 一种流程设计方法、客户机、服务器侧装置及系统 | |
HUE025644T2 (en) | Device management process, middleware and communication platform, device and system between machines | |
CN101334872B (zh) | 基于Web服务的电子公文交换方法 | |
CN109634751A (zh) | 一种利用electron框架实现应用层和底层通信的方法 | |
CN102333022B (zh) | 电力通信网络中跨安全防护区信息交互的方法及防护系统 | |
TWI294087B (en) | Systems and methods for file transfer management | |
CN106254359A (zh) | 一种可配置的报文解析系统及方法 | |
CN103595695A (zh) | 服务总线提供服务的方法及系统 | |
CN105024923B (zh) | 基于xmpp扩展消息的消息分类实现的方法及装置 | |
WO2016197851A1 (zh) | 一种通知信息的管理方法和设备 | |
JP2009265718A (ja) | ネットワーク管理情報の差分データのみを送信するネットワーク装置、サーバ、プログラム及び方法 | |
CN106406889B (zh) | 适用于移动客户端的异构应用系统内容智能转换引擎 | |
CN103269327A (zh) | 一种基于代理机制的通用文件数据服务的实现方法 | |
CN106341293B (zh) | 一种信息系统接入企业服务总线的方法及装置 | |
TWI222576B (en) | System and method for defining interface of manufacture execution system | |
CN108762947A (zh) | 一种分布式系统远程调用方法、装置及系统 | |
CN103179112A (zh) | 一种三层代理的公安信息网边界接入平台业务改造系统 | |
Anbalagan et al. | An XML data representation model for power system reliability assessment | |
JP4221689B2 (ja) | データ表示方法およびその装置 | |
EP2252032B1 (en) | Message adaptation system for system integration |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |