CN103944956B - 网络服务代理方法 - Google Patents

网络服务代理方法 Download PDF

Info

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
Application number
CN201410085224.7A
Other languages
English (en)
Other versions
CN103944956A (zh
Inventor
李莹
张世鑫
尹建伟
方伟杰
邓水光
吴朝晖
吴健
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN201410085224.7A priority Critical patent/CN103944956B/zh
Publication of CN103944956A publication Critical patent/CN103944956A/zh
Application granted granted Critical
Publication of CN103944956B publication Critical patent/CN103944956B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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响应消息模板。
CN201410085224.7A 2014-03-10 2014-03-10 网络服务代理方法 Active CN103944956B (zh)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (4)

* Cited by examiner, † Cited by third party
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