基于XML/SOAP的校园信息共享方案的研究与设计

来源 :现代情报 | 被引量 : 0次 | 上传用户:cdtst
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  〔摘 要〕研究了使用XML结合SOAP、WSDL等技术解决校园信息化建设中数据重复和信息孤岛等问题的方案。首先进行数据建模,将校园异构系统信息表述为标准的XML格式,通过SOAP封装、WSDL描述实现对信息的请求、响应和传输,解决校园分布式环境下数据格式不一致的难题,实现异构系统之间的通讯,实现的资源共享。
  〔关键词〕可扩展标记语言;简单对象访问协议;Web服务描述语言;统一描述、发现和集成
  〔中图分类号〕G203 〔文献标识码〕A 〔文章编号〕1008-0821(2009)07-0076-03
  
  Research and Design on the Campus Information
  Shared Scheme Based on XML/SOAPDu Juan
  (College of Economy and Management,Southwest University of Science and Technology,Mianyang 621010,China)
  〔Abstract〕This paper studied the scheme that solved the problems of data repetition and isolated information island in the campus information construction using XML and SOAP,WSDL and other Web services technology.First,set data modeling,described the campus heterogeneous systems information to standard XML format,then realized the request,response and transmission of information through SOAP packaging and WSDL description,solved the difficult problem of inconsistent data formats in campus distributed environment,realized the communications of heterogeneous systems,realized resources sharing.
  〔Key words〕XML;SOAP;WSDL;UDDI
  
  现阶段高校内部教学、科研、办公、管理等各方面事务都逐渐从单纯的手工、文档管理方式向信息化、系统化管理发展。然而,在实现多个基于本地数据库的信息管理系统的同时,出现了信息重复、资源浪费、交互困难的情况,随之而来的还有信息不同步、形成资源孤岛等问题。
  以XML作为信息存储和交换的格式,可以很好的解决校园中存在的“信息孤岛”问题,实现不同系统之间的集成与交互以及异构数据库间的数据共享。XML不仅提供具有意义的数据,也提供了验证的方式(XML Schema),使得程序能轻易地获得内容,并能够彻底地完成内容数据和表达方式的分离。将XML作为标准的信息表示格式,同时利用基于XML的开放的数据接口和分布式数据管理能力,实现对跨平台、各种异构数据库的统一数据交换和管理,实现数据在全校部门、学院之间顺畅的流通。数据交换的核心问题是信息的标准化,主要解决信息的可理解性问题,包括人和机器对信息的理解,最重要的是机器对信息的识别,并能根据数据进行自动处理。XML为信息的标准化提供了有力的工具。在校园信息平台中,各部门、学院之间使用XML作为数据交换的统一格式,用XML统一表示来自不同数据源的数据,可以实现系统间的数据交换,实现信息共享[4]。
  其次,还必须有一种方法来进行消息的传递。基于XML的简单对象访问协议SOAP可以和任何的传输协议联合使用,可以方便地穿越防火墙,面向服务体系结构中的发布、查找和绑定操作都可以得到SOAP的支持。将SOAP HTTP应用于校园分布式信息平台中,实现对校园分布式环境中XML格式的数据的封装和传输,进而实现部门之间的便利信息交互。另外,使用WSDL来描述Web服务,对服务的实现和接口进行标准化的定义,为部门、学院之间的服务调用提供具体的方法。
  
  1 数据建模
  
  在XML的项目中,首先应该创建标准的数据格式。为此我们首先要考虑在本校园分布式信息平台的开发模块中涉及到哪些数据,定义描述数据交换中所涉及事实的数据模型。具有高置信度的模型一旦被创建,数据模型便可以转换成为schema,然后才能继续开展以后的工作。
  首先,让我们对校园信息化建设中的“党建”、“人事”信息进行数据分析。学校的“党建”管理工作的目的在于管理全校党员的党建信息,其中的党建信息涉及到很多数据项。通过走访和调查,经过分析和整理,得到“党建”管理模块的数据逻辑结构,其中包括姓名、所在支部、申请入党时间、党校学习情况、入党时间、转正时间等数据项。同理,“人事”管理模块的数据逻辑结构包括编号、姓名、性别、出生年月、参加工作时间、职称、学历等数据项,如图1所示。
  
  接下来,为了可以结构化地定义有关数据,需要对以上两个模块进行数据建模。一般来说,就是定义Schema文件,在定义了Schema后,所有的数据都将按照这个Schema来组织和检查。XML Schema是一种控制文档结构的方法,使用XML语法,具有XML的特点。作为XML语言的主要模块,Schema对标识的标准化模式起着极其重要的作用。因为模式在发送者和接收者之间规定了强制性的协议,有利于文档之间的信息交流,而且可以在不同的群体之间共享,使得在不同的应用程序间创建、管理和处理相同的文件变得容易,共享数据模式极大地简化了XML词汇的创建和维护,提高了数据的可靠性[5]。
  在开发过程中,我们采用Axis这个Soap引擎来实现对数据的建模:
  首先在服务提供方开发Java接口和类,然后使用Axis中的Java2WSDL工具从Java接口和类创建WSDL,WSDL中的types元素描述了数据的Schema。数据项信息体现在定义的Java类中,该类的编写符合JavaBean的规范,简单地说就是通过get/set方法来定义数据项。例如,组织部定义“党建”模块的Java类:
  public class Dangjian implements java.io.Serializable{
  private java.lang.String JPTime;∥定义“入党时间”
  ……
  public java.lang.String getJPTime(){
  ? return JPTime;}
  public void setJPTime(java.lang.String JPTime){
  ? this.JPTime=JPTime;}
  ……}
  同时,把方法的参数和返回值数据类型设为对象,比如提供一个接口用来发送短信息,那么希望接口的参数是一个消息对象,这个消息对象封装了一条信息的所有内容包括发送者、接收者、发送时间、信息内容等等。因为如果把每个内容都做成一个参数,那这个接口的参数可能会非常的多,因此封装成对象是很有必要的。Axis要求复杂类型对象的编写必须符合JavaBean的规范,就是对象的属性是通过get/set方法来访问的。
  创建的Java接口部分代码如下:
  public interface DangjianService extends java.rmi.Remote{
  public dj7.Dangjian getDangjianInfo(java.lang.String in0);∥查询单条记录的方法
  public boolean deleteDangjianInfo(java.lang.String in0);∥删除记录的方法
  public dj7.Dangjian[] getAllDangjianInfo(java.lang.String in0);∥查询多条记录的方法
  public boolean addDangjianInfo(java.lang.String[] in0);∥添加记录的方法
  public boolean modifyDangjianInfo(java.lang.String[] in0);∥修改记录的方法
  public int getRowCount(java.lang.String in0);∥返回记录条数
  }
  用Java2WSDL工具从上述接口、类创建WSDL文件。生成的WSDL文档的types元素是Dangjian这个JavaBean到WSDL的映射,它描述了Web服务与用户之间交换的消息的所有数据类型,XML Schema是默认的类型系统。部分WSDL文档:
  
  
  
  
  
   ……
  上述Schema文件分别定义了Web Services环境中传输“党建信息”“人事信息”时所要遵守的的格式。如:人事处的“人事信息”包含“姓名”、“职称”、“学历”等项,元素ZhiChen为string类型,可以为空……组织部的“党员信息”包含“入党时间”、“共青团推优时间”、“入党证书编号”等项,元素JPTime为string类型,可以为空……人事处、组织部服务器端将包含调用结果的实例对象按照这个Schema文件的格式要求转换成客户端所要求的XML文档,进而构造返回给客户端的SOAP消息,完成服务的请求;客户端可以根据这个Schema文件完成对响应SOAP消息的解析(具体通过WSDL中types元素映射生成的类来实现,该类实现了序列化接口)。
  
  2 信息的传输
  
  其次,是要实现将XML格式的数据通过SOAP进行传输。采用Axis引擎实现数据的SOAP传输,主要通过jaxrpc来实现。对于客户端,主要使用Call类来完成调用Web服务,在客户端的stub类中,设置一个org.apache.axis.client.Call对象来调用服务,实际上,服务的请求和响应都是靠Call类中的invoke()方法来实现的,在调用invoke()方法前,需要对Call的属性进行设置,其中,setTargetEndpointAddress()方法设置了服务的endpoint,这个标志着服务地址的参数是从Locator类中传来的,在本系统中的值为:http:∥222.196.35.143:8080/axis/services/DangjianService7,setOperationName()方法设置了服务操作名称及其方法。invoke()方法把Call对象转换成XML SOAP请求,并把请求发送给endpoint,当返回应答后,invoke()方法返回一个java.lang.Object对象,这个对象中包含的或者是客户端需要得到的服务器应答,或者是错误信息。服务器端响应过程如图2所示。
  
   在Axis处理SOAP消息时,会涉及到序列化或反序列化问题。序列化指的是把一个Java对象写到一个XML文档上的过程;反序列化则指从一个XML文档中读取一个对象定义并基于该定义创建一个Java对象的过程。Axis提供了许多类来实现内建支持类型的序列化和反序列化,用Java的基本数据类型及其对象形式作为方法参数时是无缝的,不需要考虑序列化和反序列化的问题。Call对象的registerTypeMapping()方法起到为序列化/反序列化器注册类型映射信息的作用。
  实现了SOAP封装后,信息以一个标准的xml格式在校园分布式环境中进行传输。同理,其他部门如科技处、学生处等也能制订自己的模式文件,以XML格式表述信息,解决数据格式不一致的难题和异构系统之间的通讯,从而使不同应用系统之间交换数据变得容易,实现校园分布式环境下的资源共享。符合模式文件,含有党员信息的XML示例文件如下:
  <?xml version=″1.0″……>
  
   ?
  ? 1999-02-08
  ? 2435646
  张三……
   ?

  
  
  3 服务的发布和发现
  
  最后,我们需要让所设计的Web服务能够让其他部门所找到,所以要应用一些方法来让服务开发者发布服务,让服务的使用者发现Web服务,UDDI确定了一种机制,使得校园分布式环境下的Web服务提供者可以为其Web服务作广告,也使得Web服务调用者能找到其感兴趣的Web服务。
  
  参考文献
  [1]张云涛,温浩宇.应用Web Services降低供应链信息系统总拥有成本[J].现代情报,2008,(7):53-55.
  [2]柳巧玲,丛秋实,等.基于Web服务的业务流程管理集成应用研究[J].情报杂志,2007,(2):51-52.
  [3]Fu X,Bultan T,Su J.WSAT:A Tool for Formal Analysis of Web Services[C].Proceedings of the 16th International Conference on Computer Aided Verification,2004.7.
  [4]孙霞.基于XML的数字化校园信息发布与交换技术研究[D].武汉:武汉理工大学,2005:4-26.
  [5]李益红,王娟.XML及其在电子商务中的应用[J].福建电脑,2004,(3):34.
其他文献
〔摘要〕从深度利用数据资源和助力科研的角度,对比分析Web of Science和Google Scholar在化学领域中的性能差异。通过对比分析,从检索性能、分析性能、覆盖能力、引文跟踪、定题跟踪等方面进行比较和案例分析。发现Web of Science在化学领域具有权威性、稳定性、功能性等优势,其专业性能尚未充分利用。指出图书馆深入挖掘数据资源实用价值,提出从检索到发现的服务思路,推动技能服务
[摘要]本研究将知识共享分为知识贡献和知识搜集两个维度,利用均值和差异两种不同的构建方法,采用知识贡献强度、知识贡献差异、知识搜集强度、知识搜集差异4个维度的组合描述团队知识共享行为结构,并分析了几种典型共享行为结构的特点。以IPO模型为基础,研究了团队激励和团队共享氛围对共享行为结构的影响,以及不同共享行为结构对共享满意、团队绩效和团队创新的作用,提出了研究命题,构建了研究模型,为未来进一步研究
〔摘 要〕在我国城镇化不断推进的环境下,掌握新市民信息行为规律并构建其信息行为模型,有利于提升新市民信息活动效率,促进新市民城市融入,从而提升城镇化质量。本文在对广东省多个城市调研和对新市民自身因素、环境因素及信息因素综合分析的基础上,以威尔逊信息行为一般性模型为主线并结合技术接受模型和科亨信息需求理论,构建出新市民信息行为模型,再以广东省新市民的信息行为为实证,运用Logistic回归分析法和相
“现男友”或是“现女友”——这是今年夏天的微博高频词。  “现”既指代时间上的现在,又代表男演员李现。《亲爱的,热爱的》在7月开播,这部小甜剧真正捧红了男主角李现。  出名没趁早  回顾他的演艺之路,可以说是喜忧参半。在他最困难的时候,从来没想过放弃,基础比同学弱,他克服困难,一边上学,一边演戏,一边积累经验。李现考入北京电影学院是2010年,这是他复读一年的结果。  他并不是世俗意义中的好学生,
〔摘要〕近几年物联网市场连续保持近30%的高速增长,逐渐渗透到社会经济的各个领域,物联网已经成为全球最大市场。因此,深入研究物联网的技术机会对于提升企业核心竞争力具有重要的现实意义。本文主要借助于Citespace可视化分析软件挖掘科技论文与专利文献中有关物联网技术研究的文献,通过对比分析科技论文和专利文献中关键词聚类、技术研究热点分析发现物联网发展的两大类技术机会分别是在物联网应用层上GIS技术
〔摘要〕当前高校图书馆特色文献资源建设的总体发展不平衡,主要原因在于缺乏文献收集过程中的质量控制机制。本文提出了高校图书馆特色馆藏文献收集过程质量评价维度,即文献的权威性、文献的独特性、文献的规范性、文献的合理性和文献的可持续性。对特色馆藏文献收集过程的质量控制进行研究,介绍了中国矿业大学图书馆特色文献收集过程质量控制模型的建立与实践,以期为高校图书馆特色馆藏文献收集过程中的质量管理提供理论参考和
〔摘要〕网络搭建的“场域”成为社会风险的“放大站”,本研究旨在描述网络传播与社会风险放大之间的关系。在区分网络与媒体概念的基础上,分析网络传播特征与放大效应的关系。基于公共卫生事件,探讨社会风险本身就会产生的社会效应。在上述分析基础上,分析网络对社会风险的传播衍生出的次生危害。在网络社会与现实社会关系的假设前提下,提出网络的社会风险放大效应的模型。需要理性应对网络在社会风险中产生的放大效应。  〔
2018年是改革开放40周年,40年来在中共中央领导下,全国各族人民并肩奋战,走出了一条独具中国特色的社会主义改革发展道路。  沧海桑田,岁月如歌,40年来中国的留学行业从低迷走到辉煌,留学人数从寥寥走向恒河沙数,背后是黨中央对于“走出去”政策的坚决践行,是亿亿万万中国家庭走向康庄之路的有力佐证,更折射了改革开放40年中国经济政治文化领域翻天覆地的巨变。  站在改革开放40年的拐点回首往昔,我们俯
基金项目:江苏高校哲学社会科学研究重点项目“江苏高校‘双一流’建设绩效评价研究”(项目编号:2018SJZDI126)。  作者简介:赵乃瑄(1967-),女,信息服务部部长,馆长,研究馆员,博士,研究方向:信息资源管理、知识产权分析与服务。谢渝玥(1996-),女,硕士研究生,研究方向:专利分析与服务。  通讯作者:鲍志彦(1979-),女,创新支持中心主任,副研究馆员,硕士,研究方向:专利分析
[摘 要]从企业对竞争情报人才的需求与高校人才培养两个角度出发,以长三角地区上海、南京、杭州作为调查范围,对竞争情报人才的供需状况进行调查,并作对照分析。发现:①企业对竞争情报专业人才能力的要求主要体现在数据的敏感性,情报搜集与分析能力,组织、沟通和协调能力等方面;②提高各岗位人员竞争情报素质已成为企业的一种普遍需求;③高校关于竞争情报专业人才的培养课程设置欠完整,普遍缺乏实践教学,缺乏相关法律教