您的位置:首页 > 其它

SOAP Web Service 简介及实例演练

2015-08-05 17:54 288 查看
本文主要目的是帮助了解何为Soap Web Service,通过这个教程,我们将要学习如何创建一个简单的具有加减乘除计算功能的 Web服务 ,并且创建web服务客户端对其进行访问,我们使用eclipse来完成该Web服务的开发。

      相对于RESTful Web服务,Soap Web服务处理起来比较麻烦,如果使用notepad开发Soap Web 服务将是非常愚蠢的。

何为Web 服务

      W3C对Web 服务的定义是:通过网络支持计算机之间交互协作的软件系统。Web Service是应用软件的一个接口,可能会有大量的网络用户和桌面用户使用同一个应用软件。假设WebService是一个类似的接口,该接口的服务对象不是用户而是其它应用软件。网络客户端作为软件的交互接口直接服务于终端用户,Web Service作为接口服务于软件开发人员,使用Web Service作为API,软件开发人员可以开发和该软件交互的其它系统。

Web服务主要有两个主要的分支:

1.     SOAPWeb Service

2.     RESTfulWeb Service

SOAP Web Service

      简单对象访问协议(Sample Object Access Protocol, SOAP)是一种标准的基于XML的消息交换协议规范,使用XML消息进行客户端和Web Service之间的通信,SOAP定义了通信规则,比如XML所使用的标签及其意义。

RESTful Web Service

      RESTful Web Service 使用基于HTTP或者类似协议的架构,通过HTTP的GET、POST、 PUT、DELETE等标准操作来限制接口交互。根据我个人的使用经验,RESTful开发起来更加容易,我知道这样可能会激怒SOAP的热爱者。

WSDL

      Web Service的一个主要构成是Web服务的描述语言(Web Service Description Language, WSDL),它是一个机器可读的描述Web Service技术的XML文件,也就是,通过WSDL 文件我们可以了解:

Port/Endpoint—Web Service的URL。
输入文件格式。
输出文件格式。
 需要遵循的安全协议。
Web Service所使用的协议。

本文是Web Service研究的入手点,有关Web Service仍然有太多的东西需要学习,然而理论学习总是枯燥的,配合实际的例子可以给我们的学习过程带来更多的乐趣。

简单计算器SOAP Web Service

      顺便说一下,eclipse默认使用Apache的Axis来实施Web Service,并且在实施Web Service engine过程中为我们提供了许多选项供我们选择。

1.     创建动态的Web 工程

在eclipse中新建一个动态Web工程,输入工程名并且选择目标运行时环境(我选择的是Apache Tomcat 6.0),其它使用默认设置。





新建运行时环境

如果eclipse中没有运行时环境,可以点击NewRuntime并选择你所安装的Tomcat版本,点击next,此时选择Tomcat的路径,并点击finish完成。

2.     新建WebService Java类

在JavaResource的src目录下创建名一个包,并在该包下创建一个java类。

完整代码如下:

package com.sinoufc.www;
 
public
class
CalculateService {
   /**
    * 加法
    * @param x
被加数
    * @param y
加数
    * @return x和y的和
    */
   public
float
add(float x,
float y){
      return x + y;
   }
  
   /**
    * 减法
    * @param x
被减数
    * @param y
减数
    * @return x和y的差
    */
   public
float
sub(float x,
float y){
      return x - y;
   }
  
   /**
    * 乘法
    * @param x
被乘数
    * @param y
乘数
    * @return x和y的积
    */
   public
float
mul(float x,
float y){
      return x * y;
   }
  
   /**
    * 除法
    * @param x
被除数
    * @param y
除数
    * @return x和y的商
    */
   public
float
div(float x,
float y){
      return x / y;
   }
  
}
3.     创建WebService

现在我们已经将服务类写好,下面我们将使用该服务类创建一个WebService。

右击JavaResource,新建->WebService。点击next。



选择服务实施

在下面的窗口中点击browse按钮,并选择我们已经写好的java类,然后将服务和客户端中的互动条拖到最顶端,点击允许Publish the Web Service。



创建WebService客户端

      在配置服务实施的过程中,我们也指导生成了一个WebService客户端,这将会为WebService创建一个动态的web工程,并创建一个WebService客户端。此外,我们也可以创建一个java工程,书写一个客户端来访问该Web 服务。

部署WebService和客户端

点击next进入下一步,并点击startserver启动运行时环境Tomcat。



4     测试WebService

我们可以使用WebService客户端测试Web 服务,为此我们需要创建WebService应用,前面我们将服务配置中的滑动条拖到最顶端会创建一个web 服务客户端应用。

此外Eclipse提供了WebService Explorer,使用它我们可以方便快捷的测试Web服务。

点击next直至完成,页面会出现下面的测试界面。



注:service的配置中滑动条一定要拖到最顶端,不然会出现500错误,至于为什么会出现这样的错误还不太清楚,需要后面继续研究解决。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  web service