[发明专利]基于TCP短连接的SOAP客户端协议封装方法有效
申请号: | 201010133694.8 | 申请日: | 2010-03-26 |
公开(公告)号: | CN101834845A | 公开(公告)日: | 2010-09-15 |
发明(设计)人: | 张春飞;宋海华;魏本栋;高福海;孙力斌;庞海东;陆志强 | 申请(专利权)人: | 南京联创科技集团股份有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06 |
代理公司: | 南京天翼专利代理有限责任公司 32112 | 代理人: | 黄明哲 |
地址: | 210013 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 tcp 连接 soap 客户端 协议 封装 方法 | ||
技术领域
本发明方法属于软件协议接口领域,主要针对简单对象访问协议SOAP(SimpleObject Access Protocol)客户端协议进行封装,是一种基于TCP短连接的SOAP客户端协议封装方法。
背景技术
目前电信运营商系统当中,SOAP接口被普遍使用;但由于协议接口众多,从而需要开发多种SOAP接口;而每种接口都会制定相应的WSDL文件,WSDL指网络服务描述语言,在通常情况下:每得到一个接口开发需求,就要根据WSDL重新开发一次系统,也就是必须重新发布一次源代码版本,哪怕是:升级已有的接口,也需要重新发布一次源码;由此:开发电信软件的行业通常设立接口组,某些部门专门就负责开发接口,因接口差异性大,开发软件成本也是相当地大,这些接口前期的开发,后期的版本维护、升级,都相当的消耗人力成本。
在此环境下,各运营商为节省协议接口之间的差异,就制定统一接口方式;例如中国电信iSPP项目,就要求所有接口都是在SOAP方式下的统一接口协议;现在中国很多包括HLR接口都是升级为SOAP接口方式;但这只是解决了网络协议统一,并没有真正解决业务开发上的问题;并且升级为此接口方式会带来这样一系列问题:(图1为WSDL文件的发布示意图,这是老的方式)
一)升级接口时
在升级此接口,例如需要在SOAP协议的xml节点中添加一个参数信息节点;那么就导致需要重新发布WSDL文件,所有使用此WSDL文件的系统(包括客户端与服务端)都要重新编译并发布自己的应用系统,带来的维护与升级人力成本是非常大的;
二)添加新接口时
在添加新的SOAP接口的时候,同样是要根据WSDL编译出一套C/C++代码或java代码以供相应的开发语言调用(目前C/C++领域较流行的编译工具为gSOAP,java领域较流行的编译工具为:axis2);这些工具的使用方法都是一样的;
在仅需开发客户端的时候都存在同样的问题:要从WSDL文件编译为C/C++或java源码,再重新编译这些源码,并修改业务参数后重新编译发布新的应用系统,也就是升级应用程序代码才能解决问题。
发明内容
本发明要解决的问题是:现有SOAP的开发方式在接口文件WSDL文件发生变化时,必须重新发布一次源代码版本,因接口差异性大,开发软件成本也是相当地大,这些接口前期的开发,后期的版本维护、升级,都相当的消耗人力成本。
本发明的技术方案为:基于TCP短连接的SOAP客户端协议封装方法,针对客户端封装SOAP协议,把原本填在SOAP协议中的可变部分,即WSDL网络服务描述语言文件提取出来,编译为xml文件放置到客户端应用程序的的配置文件中,使SOAP协议可变部分全部由配置文件对象经过代码转换后生成SOAP协议体:
1)客户端载入WSDL转换后的xml文件;
2)客户端的应用程序读出配置文件,把xml结合要传输的应用程序数据转换为SOAP消息体;
3)在所述SOAP消息体加上SOAP消息头,变成一个完整的SOAP请求;
4)通过TCP短连接,将完整的SOAP请求发送给web services服务器,再处理一下web services返回的内容即完成了一次完整的SOAP接口调用;
所有的web Services客户端采用同一套客户端源码,采用统一的处理方式来向服务器发出请求。
使用第三方工具把服务端提供的WSDL网络服务描述语言格式描述文件编译为真实的xml格式,所述第三方工具为gSOAP、soapUI。
客户端通过TCP短连接发送SOAP请求后,收到web Services服务器返回即断开socket连接。
SOAP协议原本就是在TCP短连接上实现的,一般的开发工具都是引入编译的概念;是把WSDL文件编译成C/C++代码、或编译成java代码后,让这些源代码给客户端的应用程序直接使用;本发明是把原本填在协议中的WSDL文件提取出来,放到客户端的配置文件中;从而使SOAP协议可变部分全部由配置文件对象经过代码转换后生成SOAP协议体;使所有的web Services客户端都可以采用同一套客户端源码,统一的处理方式处理各种各样的SOAP协议。
本发明方法不涉及服务端SOAP业务处理;这点有别于目前软件行业当中流行的SOAP软件既处理服务端又处理客户端;之所以仅对客户端进行封装、牺牲了服务端封装特性,就是因为这样可以有更强的针对性。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京联创科技集团股份有限公司,未经南京联创科技集团股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010133694.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种实现短信聊天室功能的系统及方法
- 下一篇:负压液体补偿装置