一步步学习SPD2010--第六章节--处理数据源(5)--连接SOAP服务

        SOAP服务,也是一个XML Web service,通过HTTP或者HTTPS使用Simple Object Access Protocol(SOAP)。SharePoint可以作为SOAP service请求者或者客户端----也就是说它可以向SOAP service请求XML数据,通过使用数据视图呈现数据。像客户端脚本一样,请求者可以根据写好的SOAP service,发送XML数据、指导(即方法)、参数和值到XML Web service provider。SOAP service支持的方法和参数在Web Service Description Language(WSDL)文件被描述。如果SOAP service支持数据控制,你可以选择、插入、更新或删除XML Web service provider上的数据(通过数据源属性对话框配置每个命令)。
        SharePoint也作为SOAP service provider(ASP.NET Web service),给其他电脑系统提供XML数据。使用SharePoint Designer,你可以创建“使用ASP.NET service web service请求并非存储在你的团队网站数据”的客户端应用程序。SharePoint SOAP service接口查询机制需要使用Collaborative Application Markup Language(CAML),它是一个特定于SharePoint技术的属性标记语言。一些数据的抽取可能比较复杂,需要开发者的技巧。
        SharePoint 2010引入提供数据到远程系统的新方法----客户端对象模型和SharePoint Foundation REST接口。和ASP.NET Web service相比,倾向于使用这两个provider。然而,SharePoint Foundation REST接口(下一部分详述),只能从列表和库中抽取信息;需要开发者技巧来使用客户端对象模型。但是,当你使用SharePoint Designer创建你的解决方案时,可能发现SharePoint Foundation和SharePoint Server Web services是有用的。
        本次练习中,你添加SOAP service连接作为数据源。
        准备:使用SharePoint Designer打开之前练习的站点。打开DataSourceTest.aspx页和数据源库页面。
1. 点击数据源库页面,在数据源选项卡点击SOAP Service Connection。
2. 在“服务说明位置”框输入http://<site>/_vti_bin/webs.asmx?wsdl。<site>是网站集顶层网站的URL。点击“立即连接”。
        小贴士:如果你不能连接到SOAP service连接或者你收到错误消息----服务器返回非特定错误或者使用浏览器不能查看Web部件,检查服务器的拼写和SOAP service _vti_bin/webs.asmx?wsdl。如果你忘记在SOAP service名后输入?wsdl,SharePoint Designer自动附上。你可以在子站点级别连接到其他SOAP services,这时service description location变为如,http://<site>/_vti_bin/lists.asmx,<site>是你使用本章节的.wsp文件创建的子站点,如wideworldimporters/datasources。

        SharePoint Designer连接到主持SOAP service的服务器,并使用它从SOAP service provider那儿接收的响应填充对话框。

3. 点击确定关闭对话框。

        Webs在<site>数据连接出现在数据源库页面中的SOAP service下。


4. 点击DataSourceTest.aspx选项卡。
5. 在PlaceHolderMain区域,点击“点击此处选择数据源”,选中Webs on <site>,并点击确定。

        数据源详细信息任务显示XML根元素soap:Envelope,它包含许多子元素。每个Web元素包含网站集中一个网站的标题和URL。

效果图:


原文地址:https://www.cnblogs.com/crazygolf/p/3857104.html