欢迎来到天天文库
浏览记录
ID:13689863
大小:28.50 KB
页数:3页
时间:2018-07-23
《基于J2EE的Web Services应用.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、基于J2EE的Web Services应用[摘要]WebServices为企业系统集成、电子商务、电子政务等提供了规范的、开放的分布式应用环境本。本文讨论了其基本概念和体系结构,并利用J2EE技术加以实现,最后给出了一个具体应用实例。 [关键词]J2EEWeb服务SOAP认证ApacheAxis 一、相关工作研究 1.WebServices的体系结构。各种高级和扩展的WebServices体系架构都是在这个三角形的基础上扩展而成的。 二、基于J2EE的WebServices体系 1.基于J2EE的多层结构 J
2、2EE的多层体系结构可由图2所示。一个应用组件安装的位置,取决于该应用组件位于多层J2EE环境中的位置。这些层是客户层、Web层、业务层和企业信息系统层(EIS)。 (1)客户层。客户层普遍地支持HTML协议,也称客户代理。 (2)Web层。Web层由Web容器运行,它包括Web服务、JSP页面及显示HTML页面的Servlet等Web组件。 (3)业务层。业务层由EJB(EnterpriseJavaBean)容器运行,支持EJB、JMS、JTA等服务和技术。业务层和Web层一起构成三层J2EE应用的中间层。 (4)企业信息系统
3、层(EIS)。提供数据存储的服务,这里主要指数据库。 2.ApacheAxis框架 Axis(ApacheExtensibleInteractionSystem)是Apache软件基金会(ApacheSoftwareFoundation)开发的一个SOAP标准的Java实现,是早期ApacheSOAP项目的后继。它基于Java语言的SOAP规范(SOAP1.2)和SOAPwithAttachments规范的开放源代码实现。下面是该Axis框架的主要特征: ●灵活的消息传递框架; ●灵活的传输框架; ●数据编码支持; ●其他特
4、征:Axis完全支持WSDL以及日志记录、出错以及故障处理机制。 Axis框架主要包括以下几个关键部件: ●Axis引擎:它是Axis消息处理模型的主要入口点,负责保证遵循SOAP的语义,还负责协调其他部件的调用次序。 ●处理器:是Axis的基本构件块,又可称为处理程序。用于检查和修改SOAP消息,以便完成自己的工作。 ●链:也是处理器,表示的是有序的处理器的集合。 三、开发实例3 在校园信息管理系统中,包括学生信息管理、教务信息管理、人事信息管理、财务管理、校园卡管理、科研信息管理、资产信息管理、行政办公系统等子系
5、统,在这些系统中,需要重复地使用到学校各部门的信息、教职工信息、学生信息、登录权限管理信息等,采用WebServices技术就很好地解决了这个问题,为信息跨平台集成提供了解决方案。以下笔者以校园信息管理系统项目中的使用权限信息发布与集成为例,具体阐述WebServices的建立与应用。为了节省篇幅,程序进行了删简与修改。 1.WebServices服务程序 提供登录验证并返回权限等级的服务程序如下: importcom.sspu.util.DBconn;//连接数据库的Bean publicclassLoginService{
6、 publicStringgetPowerid(Stringusername,Stringpassword){ DBconnconn=newDBconn();//创建数据库连接 Stringpowerid=null; try{ ResultSetrs=conn.executeQuery(“select*fromloginwhereusername='”+username+”'andpassword='”+password+“'”); if(rs.next()){ powerid=rs.getString("powerid")
7、;//返回权限等级 ……} 2.服务部署文件 服务程序需要部署到SOAP服务器上,可用部署文件WSDD来完成。以下是部署文件代码: 执行javaorg.apache.axis.client.AdminClient部署文件名.wsdd,则可将前面的WebServices服务程序部署到指定的SOAP服务器上。 3.WebServices发布 WebServices的发布、绑定与调用的接口由WSDL文件来完成。 4.WebServices的客户端测试 经过测试,实现了跨平台获取用户权限的功能,实现了系统集成。但是,测试中发现通
8、过WebServices获取信息的效率低,影响了系统的正常运行速度,因而采用在开发过程中采用以下方法提高WebServices的传输速度: (1)尽量避免SOAP格式序列化,首先对JAVA而言,SOAP格
此文档下载收益归作者所有