[发明专利]一种软件构件服务化封装方法有效
申请号: | 201010150396.X | 申请日: | 2010-04-16 |
公开(公告)号: | CN101840334A | 公开(公告)日: | 2010-09-22 |
发明(设计)人: | 丁峰;周晓明;郭成昊;汪敏 | 申请(专利权)人: | 中国电子科技集团公司第二十八研究所 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 南京苏高专利商标事务所(普通合伙) 32204 | 代理人: | 柏尚春 |
地址: | 210014 江苏省南京*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 软件 构件 服务 封装 方法 | ||
技术领域
本发明属于系统软件集成领域,具体涉及一种将软件构件自动化封装成Web服务的技术,是一种实现以构件为基础的遗留系统与未来采用SOA技术体制的新系统综合集成的手段。
背景技术
新研系统与遗留系统一体化设计与综合集成技术是软件开发领域中重要的关键技术。当前随着信息技术的发展,软件系统构建朝网络化、服务化方向转型。遗留系统软件服务化技术是实现系统服务化,实现面向服务新研系统与遗留系统一体化和综合集成的关键。
当前实现遗留系统软件服务化的方法主要有两个,一是依据业务需求,为相关的软件模块重新设计服务化接口和服务实现,通过软件重构实现服务化。这种方法与新研系统的一体化整合程度好,服务接口规范。但是需要重新开发功能相近的服务化模块,原有的代码无法复用,软件开发量大,集成时间长。二是直接对已有软件模块进行服务化封装,通常的做法是在.NET平台上将非托管动态库文件封装成C#语言形式的Web服务。这种方法充分复用已有代码,对原有的软件改动小。但是整个过程目前只提供手工方法,当面对复杂的动态库时,封装的工作量大。
在文献“基于Web服务的企业应用集成研究”中,提出了采用J2EE平台基于Web服务的企业应用集成框架,其核心思想是使用自底向上的方法,为企业遗留系统(如CRM、ERP、SCM)中的功能构件设计符合Web服务标准的接口描述文件和服务具体实现,通过创建适配器使这些新服务之间以及和原有的遗留系统间能够进行信息交互。这种方法本质上是将原有系统中需要服务化的功能重新进行面向服务的设计和开发,在遗留系统和新服务之间通过代理机制实现交互。主要存在的问题是,在面对大型遗留系统时,由于应用自身逻辑和功能复杂,使得对系统功能的服务化设计、开发工作量增大,整个系统集成时间增长,并且易出错。
在文献“基于DCOM组件的PDMS的Web服务封装”中,使用的方法是针对原动态库暴露的接口进行薄层封装,即利用.NET的运行时交互功能(runtimeinterop facilities)P/Invoke,将C风格的动态库中接口或非托管(unmanaged)C++类封装成C#语言的托管代码,并将其发布为Web服务。这种方法改动量小,基本继承了原有的软件功能,但是因为整个过程是完全人工实现,对封装人员的技术水平要求高,同时当面对复杂的动态库时,封装的工作量大。另外其并没有给出统一的描述软件构件Web服务元信息的模型,来规范服务外部接口文件(WSDL)的生成。
发明内容
发明目的:本发明的目的是针对现有技术的不足,提供一种能够对软件构件高效规范封装的服务化封装方法,。
技术方案:为实现上述目的,本发明所述的软件构件服务化封装方法,首先将原动态库中的元信息提取出来;再以此为基础,利用现有的java调用C或C++语言技术和工具,以转调的java代码作为Web服务的具体实现部分,实现java对遗产系统的转调;最后将服务类文件部署到特定的Web服务运行环境中(目前支持三种服务运行环境,包含:Axis2、MULE、SCA),根据用户的选择配置产生符合各自平台规定的部署描述文件,并将其和已生成的服务实现类文件部署在各自的运行环境中,发布为相应的Web服务。
该方法具体包括如下步骤:
(1)根据用户从界面设置的服务描述信息,以及原始动态库的头文件,采集出服务的元数据信息,并存储在统一的Web服务接口模型中,为配置文件生成以及代码转调提供了所需的信息支持;
(2)以步骤(1)采集到的元数据信息为基础,利用Java调用C/C++语言工具SWIG生成java转调代码和cxx临时文件;;
(3)利用自动生成的make文件,调用make命令将cxx临时文件、lib文件和原始头文件产生包装的dll文件;
(4)动态构建抽象语法树,并以此来解析java中间代码,将获得的接口信息存入接口函数数据模型中,用其填充显示界面中的接口提示信息;根据用户选择暴露的接口信息,包装一个接口的java文件和一个实现接口的java文件,实现的java文件中加载包装后的DLL;
(5)根据用户的选择配置产生符合各自服务运行环境规定的部署描述文件;
(6)并将步骤(5)产生的部署描述文件和已生成的服务实现类文件部署在服务运行环境中,发布为相应的Web服务。
所述Web服务接口是通过用户提示的方法,支持根据用户选择暴露的原动态库中的接口自动生成。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国电子科技集团公司第二十八研究所,未经中国电子科技集团公司第二十八研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010150396.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种软件下载方法、系统及下载终端
- 下一篇:对挠性板进行校正的方法