WebService调用技术文档

合集下载

webservice第三方应用配置接口调用说明文档

webservice第三方应用配置接口调用说明文档

DCIwebservice第三方应用配置接口调用说明文档配置:Ip地址:管理员为第三方应用配置验证IP地址,第三方应用调用webservice接口需与此配置IP地址匹配,验证才会通过。

Url地址:为第三方应用所配置的作业回执消息的url地址,作业执行完成后,如果第三方应用订阅该作业url消息回执,系统会将作业回执消息发送给此地址。

Email地址:为第三方应用所配置的作业邮件回执地址,作业执行完成后,如果第三方应用订阅该作业email消息回执,系统会将作业回执消息发送给此地址。

服务授权数配置:配置第三方应用能够同时调用作业运行的个数,(例如配置为5,当第三方应用授权的作业中已经有5个作业正在执行,那么第三方应用将不能调用执行更多的作业)。

参数:Sequence:第三方应用授权序列号,由管理员添加第三方应用时系统自动创建,也是第三方应用执行webservice方法中的身份识别码,由管理员发放给第三方应用。

jobId:执行作业的标志码,用来识别第三方应用所管理作业的唯一标识。

orderType:第三方应用订阅消息回执服务时的参数,1为邮件回执,2为url回执,3为邮件与url同时回执。

方法调换用:1.Webservice以下所有方法只有当系统对外服务开启后,第三方应用才能调用。

2.系统默认根据第三方应用登录IP地址与管理员配置IP地址进行对比,匹配才可执行服务。

订阅所有授权作业消息监控服务http://服务器地址:8080/UT/soap/resultManager/orderTransResultService?sequence=参数&orderType=参数该方法调用为订阅第三方应用所有授权作业消息回执服务,当第三方应用成功调用此方法后,第三方应用会在管理员配置的相应URL地址或者邮箱收到作业回执消息信息。

Xml返回参数信息,message:服务调用返回信息,state:服务是否调用成功。

四种方式调用webservice

四种方式调用webservice

四种方式调用webservice四种客户端调用WEBSERVICE 王凡***************************************2009-08-22目录1.文档概述 (2)1.1.相关文档 (2)2.SERVER端 (3)2.1.代码 (3)2.2.SERVER端生成Wsdl (4)2.3.服务端安全性设置 (6)3.VB调用 (13)3.1.准备 (13)调用 (16)4.1.实现过程 (16)5.Axis2调用 (17)5.1.Axis2的安装 (17)5.2.Axis2调用过程 (17)6.Weblogic调用 (21)6.1.Weblogic (21)7.已解决及未解决的问题 ........................................................... 错误!未定义书签。

7.1.未解决的问题.................................................................... 错误!未定义书签。

7.2.已解决的问题.................................................................... 错误!未定义书签。

1.文档概述1.1.相关文档《Web Services开发教程.doc》2.SERVER端这个主要是用weblogic的workshop开发,用weblogic开发webservice具体可见沈辉的《Web Services开发教程.doc》,这里主要是讲客户端调用,所以服务端只作罗列。

2.1.代码在weblogic中构建webservice可以见《Web Services开发教程.doc》,用于本次测试的Server代码如下:Model:package .tsingtao.logistics.model;import java.io.Serializable;public class test implements Serializable {private static final long serialVersionUID = 1L;private String NAME;private int AGE;public void setNAME(String name){NAME=name;}public void setAGE(int age){AGE=age;}public String getNAME(){return NAME;}public int getAGE(){return AGE;}}Service代码如下:public .tsingtao.logistics.model.test[] hello(String NAME,int AGE) {.tsingtao.logistics.model.test[] t=new.tsingtao.logistics.model.test[10];for(int i=0;i<10;i++){t[i] = new .tsingtao.logistics.model.test();t[i].setNAME(NAME+i);t[i].setAGE(AGE+i);}return t;}2.2.SERVER端生成Wsdl在Server端生成的wsd如下:<="" bdsfid="134" name="testServiceDefinitions" p="">targetNamespace="http://cn/com/tsingtao/logistics/service " xmlns=""xmlns:s0="/wsdl/"xmlns:s1="http://cn/com/tsingtao/logistics/service"xmlns:s2="/wsdl/soap/"><="" attributeformdefault="unqualified" bdsfid="142" elementformdefault="qualified" p="">targetNamespace="java:.tsingtao.logistics.model"xmlns:s0="/wsdl/"xmlns:s1="http://cn/com/tsingtao/logistics/service"xmlns:s2="/wsdl/soap/"xmlns:xs="/2001/XMLSchema"><="" bdsfid="163" maxoccurs="unbounded" minoccurs="0" name="test" p="">nillable="true" type="java:test" xmlns:java="java:.tsingtao.logistics.model"/><="" bdsfid="168" name="ArrayOftest_literal" p="" type="java:ArrayOftest_literal">xmlns:java="java:.tsingtao.logistics.model"/><="" attributeformdefault="unqualified" bdsfid="172" elementformdefault="qualified" p="" targetnamespace="http://cn/com/tsingtao/logistics/service"> xmlns:s0="/wsdl/"xmlns:s1="http://cn/com/tsingtao/logistics/service"xmlns:s2="/wsdl/soap/"xmlns:xs="/2001/XMLSchema"><="" bdsfid="199" name="return" p="" type="java:ArrayOftest_literal">xmlns:java="java:.tsingtao.logistics.model"/><="" bdsfid="229" p="" style="document">transport="/soap/http"/>2.3.服务端安全性设置这个是根据沈辉的《Web Services开发教程.doc》设置的,不作详细说明,只作罗列2.3.1.在weblogic中新建用户和用户组2.3.2.在webapp中配置安全性在web-info\web.xml中添加红色部分<="" bdsfid="278" id="WebApp_ID" p="" version="2.4">xmlns="/xml/ns/j2ee"xmlns:xsi="/2001/XMLSchema-instance"xsi:schemaLocation="/xml/ns/j2ee /xml/ns/j2ee/web-app_2_4.xsd"> BSMindex.htmlindex.htmindex.jspdefault.htmldefault.htmdefault.jspwsuserSecure Area/*GETPOSTwsuserBASICmyrealm在web-info\weblogic.xml中添加红色部分<wls:weblogic-web-app< bdsfid="334" p=""></wls:weblogic-web-app<>xmlns:wls="/ns/weblogic/weblogic-web-app"xmlns:xsi="/2001/XMLSchema-instance"xsi:schemaLocation="/xml/ns/javaee/xml/ns/javaee/web-app_2_5.xsd/ns/weblogic/weblogic-web-app/ns/weblogic/weblogic-web-app/1.0/weblogic-web-app.xsd">10.3BSMwsuserwsgroup重新发布后在浏览器中就可以看到了3.VB调用3.1.准备使用vb6.0调用webservice需要用到SOAP T oolkit,我们选用的是SOAP Toolkit3.0版本。

WebService接口实例说明文档

WebService接口实例说明文档

WebService接口说明文档文档说明本文档主要讲述如何用C Sharp创建一个简单的Web Service接口,并使用Java调用这个Web Service接口。

准备工作系统环境:安装JDK1.6或更新版本开发工具:Microsoft Visual Studio 2012、MyEclipse 10.5、axis2-1.6.2C Sharp服务端1.首先,创建一个Web Service项目。

依次点击:文件—新建—项目,在弹出的新建项目窗口中选择Web下的 空 Web 应用程序。

如下图:2.接下来我们需要创建我们的Web Service接口实现文件。

鼠标右击我们的项目,依次点击:添加—新建项,在弹出窗口中选择Web 服务。

可修改新建项的文件名,注意文件名后缀后.asmx。

如下图:新建完成后我们的项目结构如下:3.打开我们新建的MyService.asmx下的MyService.asmx.cs文件,可以看到其中已经有默认的HelloWorld方法。

我们可以直接运行查看下运行的效果,效果如下图:点击HelloWorld,再点击调用可以看到页面返回:4.接下来我们完善我们的Web Service接口功能。

主要对Web Service接口进行参数类型的测试,文本型、布尔型、数值型、类(Class)等。

新增Add()等运算方法:新增strcat()连接字符串方法:新增GetBool()返回布尔值方法:新增GetTest()返回测试类,并新增Test类运行我们的项目,可以看到我们的结果如下图:点击add方法测试:输入add的参数i和j点击调用按钮,可以看到返回计算结果:5.到此为止我们C Sharp创建的Web Service程序完成。

接下来看Java如何调用我们的Web Service接口。

Java调用Web Service准备对于一个Web Service接口我们当前只知道访问的地址,我们如何用Java去访问接口呢?已知Web Service接口地址:http://localhost:11766/MyService.asmx?WSDLJava调用Web Service的方式有以下1.使用HttpClient2.使用Xfire3.使用axis2本文档示例选择的是axis2,首先到axis2网站下载axis2,网址:/axis2/java/core/download.cgi当前最新版本1.6.2。

WebService调用技术文档

WebService调用技术文档

1.什么是webservice从表面上看,Web service 就是一个应用程序,它向外界暴露出一个能够通过Web进行调用的API。

这就是说,你能够用编程的方法通过Web来调用这个应用程序。

对Web service 更精确的解释:Web services是建立可互操作的分布式应用程序的新平台。

作为一个Windows程序员,你可能已经用COM或DCOM建立过基于组件的分布式应用程序。

COM是一个非常好的组件技术,但是我们也很容易举出COM并不能满足要求的情况。

Web service平台是一套标准,它定义了应用程序如何在Web上实现互操作性。

你可以用任何你喜欢的语言,在任何你喜欢的平台上写Web service ,只要我们可以通过Web service标准对这些服务进行查询和访问。

不管你的Web service是用什么工具,什么语言写出来的,只要你用SOAP协议通过HT TP来调用它,总体结构都应如下图所示。

通常,你用你自己喜欢的语言(如VB 6或者VB. NET)来构建你的Web service,然后用SOAP Toolkit或者.NET的内建支持来把它暴露给Web客户。

于是,任何语言,任何平台上的客户都可以阅读其WSDL文档,以调用这个Web service。

客户根据WSDL描述文档,会生成一个SOAP请求消息。

Web servi ce都是放在Web服务器(如IIS) 后面的,客户生成的SOAP请求会被嵌入在一个HTTP POST请求中,发送到Web服务器来。

Web服务器再把这些请求转发给Web service 请求处理器。

对VB 6程序来说,Web service请求处理器是一个与SOAP Toolkit组件协同工作的ASP页面或ISAPI extension。

而对程序来说,Web service请求处理器则是一个.NET Framework自带的ISAPI extension。

请求处理器的作用在于,解析收到的SOAP请求,调用Web service,然后再生成相应的SOAP应答。

webservice java调用示例

webservice java调用示例

Web服务是一种基于网络的软件系统,它使用标准化的XML消息格式来交换数据。

这篇文章将介绍如何在Java中调用Web服务的示例。

1. 准备工作在开始调用Web服务之前,我们需要确保已经安装了Java开发环境,并且已经了解了Web服务的基本概念和相关知识。

2. 创建Java项目我们需要创建一个新的Java项目。

可以使用Eclipse、IntelliJ IDEA或者其他Java集成开发环境来创建项目。

在项目中,我们需要创建一个新的Java类来进行Web服务的调用。

3. 导入Web服务接口在Java项目中,我们需要导入Web服务的接口。

这可以通过WSDL (Web服务描述语言)文件来实现。

WSDL文件定义了Web服务的接口和可用操作。

可以使用wsimport工具来生成Java代码,该工具在Java的安装目录下的bin目录中可以找到。

4. 调用Web服务一旦导入了Web服务的接口,我们就可以使用Java代码来调用Web 服务了。

我们可以通过创建代理对象来调用Web服务的操作。

以下是一个简单的示例代码:```javaimport.example.webservice.MyWebService;import.example.webservice.MyWebServiceService;public class WebServiceClient {public static void main(String[] args) {MyWebServiceService service = new MyWebServiceService();MyWebService port = service.getMyWebServicePort();// 调用Web服务的操作String result = port.sayHello("World");System.out.println(result);}}```在这个示例中,我们首先创建了Web服务的代理对象,然后调用了Web服务的sayHello操作,并打印出了返回的结果。

WebService服务调用方法介绍

WebService服务调用方法介绍

WebService服务调用方法介绍WebService是一种基于网络的互操作技术,可通过简单对象访问协议 (SOAP) 来实现不同平台和编程语言之间的通信。

WebService服务调用方法是指通过客户端应用程序与后端WebService进行通信,实现数据传输和功能调用的过程。

下面将详细介绍WebService服务调用方法。

1. 了解WebService服务:在使用WebService服务之前,首先需要了解所需要调用的WebService服务的接口、方法以及参数。

通常,WebService会提供一个WSDL(Web Services Description Language)文件,其中定义了WebService的接口和方法信息。

通过WSDL文件,客户端可以获取到所有WebService接口的详细描述和相关信息。

2. 创建客户端应用程序:为了调用WebService服务,需要创建一个客户端应用程序。

这可以是一个使用特定编程语言编写的应用程序,如Java、C#等。

在客户端应用程序中,需要导入和使用与WebService相关的库和类,以便在应用程序中调用WebService服务。

3. 创建服务代理:客户端应用程序需要创建一个用于与WebService 服务进行通信的代理。

代理是客户端应用程序与WebService服务之间的中间层,它用于封装与WebService的通信细节,并提供一种方便的方式来调用WebService服务的方法。

根据不同编程语言和框架的要求,可以通过使用类似“wsimport”或“svcutil”等工具来生成代理类。

4. 调用WebService服务方法:通过创建的代理类,客户端应用程序可以直接调用WebService服务的方法。

在调用方法之前,需要根据WebService服务的接口定义传递正确的参数。

参数的传递通常是通过创建请求对象并为其设置相应的属性来完成的。

请求对象将包含需要传输给WebService服务的数据。

java webservice接口调用案例

角色:文章写手文章主题:Java WebService接口调用案例尊敬的客户,在您指定的主题下,我将为您撰写一篇关于Java WebService接口调用案例的文章。

文章将从基础知识入手,逐步深入,以确保您能全面理解和灵活应用这一主题。

一、Java WebService基础知识1.1 什么是Web ServiceWeb Service是一种基于XML标准来进行网络服务的应用程序接口(API)。

它允许不同的应用程序在网络上互相通信,实现远程程序调用(RPC)。

1.2 Java中的Web Service在Java中,可以使用JAX-WS(Java API for XML Web Services)来创建和调用Web Service。

通过JAX-WS,可以方便地构建和部署基于XML的Web服务,实现跨评台、跨语言的通信。

二、Java WebService接口调用实例2.1 创建Web Service客户端在Java项目中引入WebService客户端的依赖包,并生成客户端代码。

可以创建一个Java类作为WebService的客户端,调用WebService 提供的接口方法。

2.2 实现WebService接口调用在客户端类中,可以实例化WebService的服务类,并通过该实例调用WebService提供的方法。

可以通过传递参数来调用WebService接口,获取返回结果,并进行相应的处理和展示。

2.3 错误处理和异常处理在进行WebService接口调用时,需要注意错误处理和异常处理。

可以通过try-catch-finally语句来捕获异常,并进行适当的处理,以确保程序的稳定性和健壮性。

三、个人观点和总结在我看来,Java WebService接口调用是一项非常重要和有价值的技能。

它可以帮助我们实现不同系统之间的通信和数据交换,实现业务逻辑的解耦和扩展。

通过学习和掌握Java WebService接口调用,我们可以更好地应用和拓展在实际项目开发中,提高系统的可维护性和扩展性。

常用调用webservice的方法

常用调用webservice的方法全文共四篇示例,供读者参考第一篇示例:在现今的软件开发领域中,调用Webservice已经成为一种常见的做法。

Webservice是一种通过网络进行数据交换的技术,可以让应用程序在不同的机器之间进行通信,使得不同的系统可以共享数据和功能。

在本文中,我们将介绍一些常用的调用Webservice的方法以及一些注意事项。

## 一、SOAP协议SOAP(Simple Object Access Protocol)是一种通用的传输协议,可以通过HTTP进行数据交换。

在调用Webservice时,我们可以使用SOAP协议来进行数据交互。

通常情况下,我们可以使用SOAP客户端来发送SOAP请求并接收返回的SOAP响应。

```javaimport javax.xml.soap.*;import java.io.*;## 二、RESTful API```javaimport java.io.BufferedReader;import java.io.InputStreamReader;import .HttpURLConnection;import .URL;## 三、使用开源库除了手动编写代码来调用Webservice,我们还可以使用一些现成的开源库来简化这个过程。

Apache CXF是一个流行的Webservice框架,它提供了丰富的API和工具来帮助我们开发和调用Webservice。

HelloWorld client = (HelloWorld) factory.create();String result = client.sayHello("world");System.out.println(result);}}```## 四、安全注意事项在调用Webservice时,我们也需要考虑安全因素。

我们可以使用HTTPS来保护数据的传输安全,可以使用WS-Security来保护数据的机密性和完整性,还可以使用OAuth来进行身份验证和授权。

WebService接口说明文档


说明 所分配的用户名 密码 短信内容。70 字以内 目标号码。以逗号(,)分隔。发送状态
现 a. 定义 场 public QueryResult QuerySMS(string Username, string Password, string 拍 b. 参数 照 参数 说明 ( Username 所分配的用户名 取 Password 密码 得 SID 短信编号 客 户 c. 返回值 public class QueryResult 同 { 意 /// <summary> ) /// 查询状态(0:成功;-201:用户名/密码错误;-203:编号错误) 。
SID)
PS:双击获取文档。Ctrl+A,Ctrl+C,然后粘贴到word即可。 未能直接提供word版,抱歉。
b. 参数 参数 Username Password Content Numbers c. 返回值
public class SendResult { /// <summary> /// 发送状态(0:成功;-102:余额不足;-201:用户名/密码错误) /// </summary> public int State; /// <summary> /// 短信编号 /// </summary> public string SID; }
wsdl接口定义1sendsms发送短信定义publicsendresultsendsmsstringusernamestringpasswordstringcontentstringnumbers参数参数说明username所分配的用户名password密码content短信内容
WebService 接口说明文档

webservice技术文档

1、什么是webservice从表面上看:Webservices 就是一个应用程序,它向外界暴露出一个能够通过Web 进行调用的API。

这就是说,你能够用编程的方法通过Web来调用这个应用程序。

我们把调用这个Webservices 的应用程序叫做客户。

更专业的描述如下:Webservices是描述一些操作(利用标准化的XML 消息传递机制可以通过网络访问这些操作)的接口。

Webservices是用标准的、规范的XML 概念描述的,称为Webservices的服务描述。

这一描述囊括了与服务交互需要的全部细节,包括消息格式(详细描述操作)、传输协议和位置。

该接口隐藏了实现服务的细节,允许独立于实现服务基于的硬件或软件平台和编写服务所用的编程语言使用服务。

这允许并支持基于Webservices的应用程序成为松散耦合、面向组件和跨技术实现。

Webservices履行一项特定的任务或一组任务。

Webservices可以单独或同其它Webservices一起用于实现复杂的聚集或商业交易,以及企业集成(EAI)。

2、Webservices模型Webservices体系结构基于三种角色(服务提供者、服务注册中心和服务请求者)之间的交互。

交互涉及发布、查找和绑定操作。

这些角色和操作一起作用于Webservices构件:Webservices软件模块及其描述。

在典型(并非非典^_^)情况下,服务提供者托管可通过网络访问的软件模块(Webservices的一个实现)。

服务提供者定义Web 服务的服务描述并把它发布到服务请求者或服务注册中心。

服务请求者使用查找操作来从本地或服务注册中心检索服务描述,然后使用服务描述与服务提供者进行绑定并调用Web 服务实现或同它交互。

服务提供者和服务请求者角色是逻辑结构,因而服务可以表现两种特性。

下图图示了这些操作、提供这些操作的组件及它们之间的交互。

3、Webservices协议栈要以一种可互操作的方式执行发布、发现和绑定这三个操作,必须有一个包含每一层标准的Webservices协议栈。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.什么是webservice从表面上看,Web service 就是一个应用程序,它向外界暴露出一个能够通过Web进行调用的API。

这就是说,你能够用编程的方法通过Web来调用这个应用程序。

对Web service 更精确的解释:Web services是建立可互操作的分布式应用程序的新平台。

作为一个Windows程序员,你可能已经用COM或DCOM建立过基于组件的分布式应用程序。

COM是一个非常好的组件技术,但是我们也很容易举出COM并不能满足要求的情况。

Web service平台是一套标准,它定义了应用程序如何在Web上实现互操作性。

你可以用任何你喜欢的语言,在任何你喜欢的平台上写Web service ,只要我们可以通过Web service标准对这些服务进行查询和访问。

不管你的Web service是用什么工具,什么语言写出来的,只要你用SOAP协议通过HT TP来调用它,总体结构都应如下图所示。

通常,你用你自己喜欢的语言(如VB 6或者VB. NET)来构建你的Web service,然后用SOAP Toolkit或者.NET的内建支持来把它暴露给Web客户。

于是,任何语言,任何平台上的客户都可以阅读其WSDL文档,以调用这个Web service。

客户根据WSDL描述文档,会生成一个SOAP请求消息。

Web servi ce都是放在Web服务器(如IIS) 后面的,客户生成的SOAP请求会被嵌入在一个HTTP POST请求中,发送到Web服务器来。

Web服务器再把这些请求转发给Web service 请求处理器。

对VB 6程序来说,Web service请求处理器是一个与SOAP Toolkit组件协同工作的ASP页面或ISAPI extension。

而对程序来说,Web service请求处理器则是一个.NET Framework自带的ISAPI extension。

请求处理器的作用在于,解析收到的SOAP请求,调用Web service,然后再生成相应的SOAP应答。

Web服务器得到SOAP应答后,会再通过HTTP应答的方式把它送回到客户端。

2.基本概念SOAPWeb service建好以后,其他人就会去调用它。

简单对象访问协议(SOAP)提供了标准的远程过程调用( RPC)方法来调用Web service。

SOAP规范定义了SOAP消息的格式,以及怎样通过HTTP协议来使用SOAP。

SOAP也是基于XML和XSD的,XML是SOAP 的数据编码方式。

客户端和服务端之间的方法调用请求和结果返回值都放在这些消息里。

XML和XSD可扩展的标记语言(XML)是Web service平台中表示数据的基本格式。

除了易于建立和易于分析外,XML主要的优点在于它既是平台无关的,又是厂商无关的。

无关性是比技术优越性更重要的。

XML解决了数据表示的问题,但它没有定义一套标准的数据类型,更没有说怎么去扩展这套数据类型。

例如,整形数到底代表什么?16位,32位,还是64位?这些细节对实现互操作性都是很重要的。

W3C制定的XML Schema(XSD)就是专门解决这个问题的一套标准。

它定义了一套标准的数据类型,并给出了一种语言来扩展这套数据类型。

Web service平台就是用XSD来作为其数据类型系统的。

当用某种语言(如或C #)来构造一个Web service时,为了符合Web service标准,所有使用的数据类型都必须被转换为XSD类型。

WSDL(Web Services Description Language)用于描述服务端所提供服务的XML格式。

WSDL文件里,描述了服务端提供的服务,提供的调用方法,以及调用时所要遵循的格式,比如调用参数和返回值的格式等等。

WSDL 很像COM编程里的IDL(Interface Description Language),是服务器与客户端之间的契约,双方必须按契约严格行事才能实现功能。

WSML(Web Services Meta Language)用于描述WSDL里提供的方法与实现该方法的COM对象之间的映射关系。

该文件是Micr osoft的实现中特有的,不是SOAP标准的一部分。

一般情况下,该文件只在服务端存在。

3.Webservice的技术特点长项一:跨防火墙的通信如果应用程序有成千上万的用户,而且分布在世界各地,那么客户端和服务器之间的通信将是一个棘手的问题。

因为客户端和服务器之间通常会有防火墙或者代理服务器。

在这种情况下,使用DCO M就不是那么简单,通常也不便于把客户端程序发布到数量如此庞大的每一个用户手中。

传统的做法是,选择用浏览器作为客户端,写下一大堆ASP页面,把应用程序的中间层暴露给最终用户。

这样做的结果是开发难度大,程序很难维护。

举个例子,在应用程序里加入一个新页面,必须先建立好用户界面(Web页面),并在这个页面后面,包含相应商业逻辑的中间层组件,还要再建立至少一个ASP页面,用来接受用户输入的信息,调用中间层组件,把结果格式化为HTML形式,最后还要把“结果页”送回浏览器。

要是客户端代码不再如此依赖于HTML表单,客户端的编程就简单多了。

如果中间层组件换成Web Service的话,就可以从用户界面直接调用中间层组件,从而省掉建立ASP页面的那一步。

要调用Web Service,可以直接使用Microsoft SOAP Tool kit或.NET这样的SOAP客户端,也可以使用自己开发的SOAP客户端,然后把它和应用程序连接起来。

不仅缩短了开发周期,还减少了代码复杂度,并能够增强应用程序的可维护性。

同时,应用程序也不再需要在每次调用中间层组件时,都跳转到相应的“结果页”。

从经验来看,在一个用户界面和中间层有较多交互的应用程序中,使用Web Service这种结构,可以节省花在用户界面编程上20%的开发时间。

另外,这样一个由Web Service 组成的中间层,完全可以在应用程序集成或其它场合下重用。

最后,通过Web Service把应用程序的逻辑和数据“暴露”出来,还可以让其它平台上的客户重用这些应用程序。

长项二:应用程序集成企业级的应用程序开发者都知道,企业里经常都要把用不同语言写成的、在不同平台上运行的各种程序集成起来,而这种集成将花费很大的开发力量。

应用程序经常需要从运行在IB M主机上的程序中获取数据;或者把数据发送到主机或UNIX应用程序中去。

即使在同一个平台上,不同软件厂商生产的各种软件也常常需要集成起来。

通过Web Service,应用程序可以用标准的方法把功能和数据“暴露”出来,供其它应用程序使用。

例如,有一个订单登录程序,用于登录从客户来的新订单,包括客户信息、发货地址、数量、价格和付款方式等内容;还有一个订单执行程序,用于实际货物发送的管理。

这两个程序来自不同软件厂商。

一份新订单进来之后,订单登录程序需要通知订单执行程序发送货物。

通过在订单执行程序上面增加一层Web Service,订单执行程序可以把“Add Order”函数“暴露”出来。

这样,每当有新订单到来时,订单登录程序就可以调用这个函数来发送货物了。

长项三:B2B的集成用Web Service集成应用程序,可以使公司内部的商务处理更加自动化。

但当交易跨越供应商和客户、突破公司的界限时会怎么样呢?跨公司的商务交易集成通常叫做B2B集成。

Web Service是B2B集成成功的关键。

通过Web Service,公司可以把关键的商务应用“暴露”给指定的供应商和客户。

例如,把电子下单系统和电子发票系统“暴露”出来,客户就可以以电子的方式发送订单,供应商则可以以电子的方式发送原料采购发票。

当然,这并不是一个新的概念,EDI(电子文档交换)早就是这样了。

但是,Web Service的实现要比E DI简单得多,而且Web Service运行在Internet上,在世界任何地方都可轻易实现,其运行成本就相对较低。

不过,Web Service并不像EDI那样,是文档交换或B2B集成的完整解决方案。

Web Service只是B2B集成的一个关键部分,还需要许多其它的部分才能实现集成。

用Web Service来实现B2B集成的最大好处在于可以轻易实现互操作性。

只要把商务逻辑“暴露”出来,成为Web Service,就可以让任何指定的合作伙伴调用这些商务逻辑,而不管他们的系统在什么平台上运行,使用什么开发语言。

这样就大大减少了花在B2B集成上的时间和成本,让许多原本无法承受EDI的中小企业也能实现B2B集成。

长项四:软件和数据重用软件重用是一个很大的主题,重用的形式很多,重用的程度有大有小。

最基本的形式是源代码模块或者类一级的重用,另一种形式是二进制形式的组件重用。

当前,像表格控件或用户界面控件这样的可重用软件组件,在市场上都占有很大的份额。

但这类软件的重用有一个很大的限制,就是重用仅限于代码,数据不能重用。

原因在于,发布组件甚至源代码都比较容易,但要发布数据就没那么容易,除非是不会经常变化的静态数据。

Web Service在允许重用代码的同时,可以重用代码背后的数据。

使用Web Service,再也不必像以前那样,要先从第三方购买、安装软件组件,再从应用程序中调用这些组件;只需要直接调用远端的Web Service就可以了。

举个例子,要在应用程序中确认用户输入的地址,只需把这个地址直接发送给相应的Web Service,这个Web Service 就会帮你查阅街道地址、城市、省区和邮政编码等信息,确认这个地址是否在相应的邮政编码区域。

Web Service 的提供商可以按时间或使用次数来对这项服务进行收费。

这样的服务要通过组件重用来实现是不可能的,那样的话你必须下载并安装好包含街道地址、城市、省区和邮政编码等信息的数据库,而且这个数据库还是不能实时更新的。

另一种软件重用的情况是,把好几个应用程序的功能集成起来。

例如,要建立一个局域网上的门户站点应用,让用户既可以查询联邦快递包裹,查看股市行情,又可以管理自己的日程安排,还可以在线购买电影票。

现在Web上有很多应用程序供应商,都在其应用中实现了这些功能。

一旦他们把这些功能都通过Web Service “暴露”出来,就可以非常容易地把所有这些功能都集成到你的门户站点中,为用户提供一个统一的、友好的界面。

将来,许多应用程序都会利用Web Service,把当前基于组件的应用程序结构扩展为组件/Web Service 的混合结构,可以在应用程序中使用第三方的Web Service 提供的功能,也可以把自己的应用程序功能通过Web Service 提供给别人。

两种情况下,都可以重用代码和代码背后的数据。

相关文档
最新文档