使用 Web 服务(电脑学习)_第1页
使用 Web 服务(电脑学习)_第2页
使用 Web 服务(电脑学习)_第3页
使用 Web 服务(电脑学习)_第4页
使用 Web 服务(电脑学习)_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

使用Web服务2回顾2-1Web服务是一种自包含、自解释、模块化的应用程序,它能够在Web上发布、定位和调用Web服务结构主要由以下层组成:数据存储数据访问Web服务逻辑Web服务外观侦听器层[WebMethod]标签通知ASP.NET编译器,接下来的方法是一个

Web方法,它将导出到Web3回顾2-2服务提供者与服务注册器、服务代理和服务请求者一起组成了Web服务中的重要参与者Web服务的优点如下:交叉业务集成提高效率拉近客户关系

便于及时集成创建Web服务项目时,VS.NET会生成以下文件AssemblyInfo.cs<WebService>.asmx和<WebService>.csGlobal.asax和Global.asax.cs<WebService>.discoWeb.config4目标理解部署WebService了解注册和发布掌握在ASP.NET和WinForm中使用WebService5部署WebService6使用Web服务过程Web服务用户代理(

1

)(

2

)采用Disco采用WSDLWeb服务DiscoDiscoDiscoWSDLUDDI7注册和使用Web服务

Web服务存在的共同问题:紧密耦合发布服务描述服务网络开发框架和工具服务要解决这些问题,此规范分为三个类别:发现说明协议WSDLSOAPUDDIDISCO8UDDI2-1因此

UDDI可用于查找以下内容:有关业务伙伴提供的Web服务的信息

特定

Web服务的提供者列表特定Web服务如何公开的详细技术信息特定业务类别下,提供特定Web服务的公司等UDDI帮助注册服务提供者提供的服务,以便可以共享。还有助于服务使用者或Web用户查找Web服务9UDDI2-2UDDI商业实体设置的业务注册规范和

UDDI架构组合在一起,方便了要编程的Web服务的发现工业商业市场与搜索引擎

UDDIInternet业务注册表(UBR)

注册/搜索UDDI业务注册表UDDI业务注册表的目的是整合电子商务站点

10UDDI的工作原理注册过程中提供的信息可以大致分为三类:白页黄页绿页包括地址、联系方式和已知标识符

包括基于标准分类法划分的行业类别信息包含有关公司提供的服务的技术信息和对各种其他规范的引用

数据BusinessEntityBusinessServicePublisherAssertiontModelBindingTemplates这些页面中的数据可以划分为五类:

11UDDI业务注册表Microsoft注册处通过注册处进行注册直接注册每日复制IBM节点运营商节点12注册过程13用UDDI查找Web服务发现

Web服务所需要的第一个步骤。可以通过在页面

上单击链接“Find”来打开此页面接下来在提供的列表中选择UDDI业务注册表要查看列出的各种服务,则必须单击服务链接单击其中一个服务,就会生成有关服务/业务/服务类型的说明,如图所示UDDI业务注册表搜索结果服务详细信息14用发现文档查找Web服务2-1Web服务发现机制使客户端应用程序能够查找或发现描述Web服务的文档.disco文件或发现文档包含到描述Web服务的其他资源的链接,并使客户端发现Web服务

以下代码演示了发现文档的内容<?Xmlversion=”1.0”encoding=“tuf-8”?><discoveryxmlns:xsd=”/2001/XMLSchema”xmlns:xsi=”/2001/XMLSchema-instance”xmlns=“/disco/”><discoveryRefref=“/Folder/Default.disco”/><contractRefref=”http://Nancyd/mywebservice/Service1.asmx?wsdl”docRef=http://Nancyd/mywebservice/Service1.asmxxmlns=/disco/scl//><soapaddress=”http://Nancyd/mywebservice/Service1.asmx”xmlns:q1=/binding=q1:Service1Soap”xmlns=/disco/scl//></discovery>在发现文档中指定服务说明引用

15创建一个XML文档,并在第一行中插入<?xmlversion=”1.0”?>标签添加一个

<discovery>元素,如:<discoveryxmlns=/disco/>如所示,在

<discovery>元素中添加对服务说明、XSD架构和其他发现文档的引用,:

在Web服务器上部署发现文档用发现文档查找Web服务2-2<?Xmlversion=”1.0”?><discoveryxmlns=/disco/><discoveryRefref=/Folder/Default.disco”/><contractRefref=”http:/NancyD/MyWebService.asmx?WSDL”docRef=”Service.htm”xmlns=/disco/scl/”/>

<schemaRefref=”S/disco/schema/”/></discovery>16使用Wsdl.Exe创建代理类要为创建的Web服务创建代理文件,请在DOS提示符入键入以下命令:

WSDL.exe实用程序用/l:language命令行参数指定语言代理源文件需要被编译为一个DLLWSDLhttp://localhost/aspex/CH13/Factorial.asmxWSDLhttp://localhost/aspex/CH13/Factorial.asmx/l:vbcsc/out:MyWS.dll/t:library/r:System.Web.Services.dllFactorial.cs17在ASP.NET中使用Web服务3-1创建一个名为CH14-Web的Web应用程序在“解决方案资源管理器”窗口中右键单击“引用”节点并选择“添加Web引用”,如图所示此时出现“添加Web引用”对话框,如图所示在“添加Web引用”对话框的URL栏中,指定要使用的XMLWeb服务的路径单击方法CalFactorial(),便显示VS.NET自动生成的页面,以测试Web服务公开的方法18在ASP.NET中使用Web服务3-2为该方法输入相应的参数,并单击“调用”。测试的结果显示在“InternetExplorer”窗口中,如图所示

通过替换“Web引用名称”栏中的默认名称localhost,将Web服务名称重命名为MyWebService,如图所示。最后单击“添加引用”按钮,添加对Web应用程序的引用单击“添加引用”按钮后,VisualStudio.NET在“解决方案资源管理器”窗口中包括

Web引用

MyWebService,并将相应的

.wsdl、.disco和.map文件添加到“Web引用”文件夹下的客户端应用程序19在ASP.NET中使用Web服务3-3设计如图所示的Web应用程序界面,并将Web窗体重命名为TestFactorial.aspx对Web界面中控件的命名,如表所示将以下代码添加至CalculateFactorial的Click事件构建并执行此应用程序,以验证其工作情况TestFactorial.aspx中的控件TestFactorial.aspx控件属性值ButtonText计算阶乘IDbtnCalLabelIDlblInfoText输入一个数字:IDlblValTextBoxIDtxtValprivatevoidbtnCal_Click(objectsender,System.EventArgse){MyWebService.FactorialobjMyWebService=newCH14Web.MyWebService.Factorial);lblVal.Text=objMyWebService.CalFactorial(Int32.Parse(txtVal.Text)).ToString();}20在WinForms中使用Web服务2-1在VS.NET中创建一个名为CH14Win的Windows应用程序。将该窗体重命名为frmTestWebService,窗体标题为“测试Web服务”在“解决方案资源管理器”窗口中右键单击“引用”节点,并选择“添加Web引用”输入Web服务Factorial.asmx的路径,并将Web引用的名称替换为WebService2。接下来单击“添加引用”按钮将Web服务添加到该项目中设计如图所示的Windows应用程序界面,对窗体控件的命名,如表所示frmTestWebService控件属性值ButtonText计算NamebtnCalLabelText输入一个数字:NamelblValTextBoxNametxtVal21将以下代码添加到btnCal的Click事件构建并执行此应用程序,以验证其工作情况在Winforms中使用Web服务2-2privatevoidbtnCal_Click(objectsender,System.EventArgse){MyWebService2.FactorialobjMyWebService2=newMyWebService2.Factorial);lblVal.Text=objMyWebService2.CalFactorial(Int32.Parse(txtVal.Text)).ToString();}22总结UDDI帮助注册服务提供者提供的服务,以便可以共享U

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论