使用Web服务(1)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

ACCPV4.0第十四章使用Web服务ACCPV4.02回顾2-1Web服务是一种自包含、自解释、模块化的应用程序,它能够在Web上发布、定位和调用Web服务结构主要由以下层组成:数据存储数据访问Web服务逻辑Web服务外观侦听器层[WebMethod]标签通知ASP.NET编译器,接下来的方法是一个Web方法,它将导出到WebACCPV4.03回顾2-2服务提供者与服务注册器、服务代理和服务请求者一起组成了Web服务中的重要参与者Web服务的优点如下:交叉业务集成提高效率拉近客户关系便于及时集成创建Web服务项目时,VS.NET会生成以下文件AssemblyInfo.csWebService.asmx和WebService.csGlobal.asax和Global.asax.csWebService.discoWeb.configACCPV4.04目标理解部署WebService了解注册和发布掌握在ASP.NET和WinForm中使用WebServiceACCPV4.05部署WebServiceACCPV4.06使用Web服务过程Web服务用户代理(1)(2)采用Disco采用WSDLWeb服务DiscoDiscoDiscoWSDLUDDIACCPV4.07注册和使用Web服务Web服务存在的共同问题:1.紧密耦合2.发布服务3.描述服务4.网络5.开发框架和工具服务要解决这些问题,此规范分为三个类别:1.发现2.说明3.协议ACCPV4.08UDDI2-1因此UDDI可用于查找以下内容:有关业务伙伴提供的Web服务的信息特定Web服务的提供者列表特定Web服务如何公开的详细技术信息特定业务类别下,提供特定Web服务的公司等UDDI帮助注册服务提供者提供的服务,以便可以共享。还有助于服务使用者或Web用户查找Web服务ACCPV4.09UDDI2-2UDDI规范(业务注册)UDDI规范(业务注册)UDDIAPISchema架构UDDI商业实体设置的业务注册规范和UDDI架构组合在一起,方便了要编程的Web服务的发现工业商业市场与搜索引擎UDDIInternet业务注册表(UBR)注册/搜索UDDI业务注册表UDDI业务注册表的目的是整合电子商务站点ACCPV4.010UDDI的工作原理注册过程中提供的信息可以大致分为三类:白页黄页绿页包括地址、联系方式和已知标识符包括基于标准分类法划分的行业类别信息包含有关公司提供的服务的技术信息和对各种其他规范的引用数据BusinessEntityBusinessServicePublisherAssertiontModelBindingTemplates这些页面中的数据可以划分为五类:ACCPV4.011UDDI业务注册表Microsoft注册处通过注册处进行注册直接注册每日复制IBM节点运营商节点ACCPV4.012注册过程ACCPV4.013用UDDI查找Web服务发现Web服务所需要的第一个步骤。可以通过在页面上单击链接“Find”来打开此页面接下来在提供的列表中选择UDDI业务注册表要查看列出的各种服务,则必须单击服务链接单击其中一个服务,就会生成有关服务/业务/服务类型的说明,如图所示UDDI业务注册表搜索结果服务详细信息ACCPV4.014用发现文档查找Web服务2-1Web服务发现机制使客户端应用程序能够查找或发现描述Web服务的文档.disco文件或发现文档包含到描述Web服务的其他资源的链接,并使客户端发现Web服务以下代码演示了发现文档的内容?Xmlversion=”1.0”encoding=“tuf-8”?discoveryxmlns:xsd=””xmlns:xsi=””xmlns=“”discoveryRefref=“/Folder/Default.disco”/contractRefref=””docRef===””xmlns:q1==q1:Service1Soap”xmlns=在发现文档中指定服务说明引用ACCPV4.015创建一个XML文档,并在第一行中插入?xmlversion=”1.0”?标签添加一个discovery元素,如:discoveryxmlns=如所示,在discovery元素中添加对服务说明、XSD架构和其他发现文档的引用,:在Web服务器上部署发现文档用发现文档查找Web服务2-2?Xmlversion=”1.0”?discoveryxmlns==/Folder/Default.disco”/contractRefref=”http:/NancyD/MyWebService.asmx?WSDL”docRef=”Service.htm”xmlns=”/schemaRefref=”Schemas.xmlsoap.org/disco/schema/”//discoveryACCPV4.016使用Wsdl.Exe创建代理类要为创建的Web服务创建代理文件,请在DOS提示符入键入以下命令:WSDL.exe实用程序用/l:language命令行参数指定语言代理源文件需要被编译为一个DLLWSDL://localhost/aspex/CH13/Factorial.asmx/l:vbcsc/out:MyWS.dll/t:library/r:System.Web.Services.dllFactorial.csACCPV4.017在ASP.NET中使用Web服务3-1创建一个名为CH14-Web的Web应用程序在“解决方案资源管理器”窗口中右键单击“引用”节点并选择“添加Web引用”,如图所示此时出现“添加Web引用”对话框,如图所示在“添加Web引用”对话框的URL栏中,指定要使用的XMLWeb服务的路径单击方法CalFactorial(),便显示VS.NET自动生成的页面,以测试Web服务公开的方法ACCPV4.018在ASP.NET中使用Web服务3-2为该方法输入相应的参数,并单击“调用”。测试的结果显示在“InternetExplorer”窗口中,如图所示通过替换“Web引用名称”栏中的默认名称localhost,将Web服务名称重命名为MyWebService,如图所示。最后单击“添加引用”按钮,添加对Web应用程序的引用单击“添加引用”按钮后,VisualStudio.NET在“解决方案资源管理器”窗口中包括Web引用MyWebService,并将相应的.wsdl、.disco和.map文件添加到“Web引用”文件夹下的客户端应用程序ACCPV4.019在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();}ACCPV4.020在WinForms中使用Web服务2-1在VS.NET中创建一个名为CH14Win的Windows应用程序。将该窗体重命名为frmTestWebService,窗体标题为“测试Web服务”在“解决方案资源管理器”窗口中右键单击“引用”节点,并选择“添加Web引用”输入Web服务Factorial.asmx的路径,并将Web引用的名称替换为WebService2。接下来单击“添加引用”按钮将Web服务添加到该项目中设计如图所示的Windows应用程序界面,对窗体控件的命名,如表所示frmTestWebService控件属性值ButtonText计算NamebtnCalLabelText输入一个数字:NamelblValTextBoxNametxtValACCPV4.021将以下代码添加到btnCal的Click事件构建并执行此应用程序,以验证其工作情况在Winforms中使用Web服务2-2privatevoidbtnCal_Click(objectsender,System.EventArgse){MyWebService2.FactorialobjMyWebService2=newMyWebService2.Factorial);lblVal.Text=objMyWebService2.CalFactorial(Int32.Parse(txtVal.Text)).ToString();}ACCPV4.022总结UDDI帮助注册服务提供者提供的服务,以便可以共享UDDI业务注册表的目的是整合电子商务站点Web服务发现机制使客户端应用程序能够查找或发现描述Web服务的文档发现文档包含有关其他Web服务的信息,此Web服务位于同一或另外的Web服务器上WSDL(Web服务描述语言)是Microsoft、Ariba和IBM共同努力的结果,是一种描述或描绘Web服务的语言VS.NET2003提供了在Windows和Web应用程序中使用Web服务的简单方法

1 / 22
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功