Webservice是系统对外的接口,比如你要从别的网站或服务器上获取资源或信息,别人肯定不会把数据库共享给你,他只能给你提供一个他们写好的方法来获取数据,你引用他提供的接口就能使用他写好的方法,从而达到数据共享的目的。

附件是使用Axis编写WebService的例子,本例子的WebService提供了两个方法,分别是sayHello和sayHelloToPerson,第一个只是返回一个"Hello"字符串,没有参数,第二个函数接受一个字符串作为参数,返回"Hello 参数值",该例子比较简单,但是清楚的说明了从编写代码到发布为WebService以及测试编写好的WebService全过程。

以下是操作步骤:

1、编写服务代码

      服务代码提供了两个函数,分别为sayHello和sayHelloToPerson,在HelloService.java类中

2、发布WebService

      要将上边写的HelloService类发布为WebService,需要先搭建Web应用。下面是在Tomcat下使用Axis创建WebService服务的例子。

3、在Tomcat下创建Web应用

     在该例子中,在Tomcat下创建了一个context path为test_webservice的WEB应用。

     (1) 在Tomcat的webapps下创建如下文件系统

          test_webservice

               WEB-INF

                    lib

                    Classes

        (2)在WEB-INF文件夹下创建web.xml文件,在web.xml中主要是配置axis。

     4、复制axis相关的jar文件

     将axis的相关jar文件复制到WEB-INF\lib文件夹下。这些文件包括:

activation.jar
axis.jar
axis-ant.jar
axis-schema.jar
commons-discovery-0.2.jar
commons-logging-1.0.4.jar
jaxrpc.jar
log4j-1.2.8.jar
mailapi.jar
saaj.jar
wsdl4j-1.5.1.jar
xmlsec-1.3.0.jar    

5、测试发布的WEB应用 

 启动Tomcat服务,打开IE浏览器,访问http:host:port/test_webservice/services,

如果看到如下界面就说明AXIS部署成功了。 

6、发布WebService

     发布WebService需要使用现有的AdminService来实现,这里我写了一个批处理文件来发布WebService,以后如果需要发布其他文件,只需要修改相应的参数就可以了。

(1)创建deploy.wsdd文件。

(2)创建发布WebService服务的批处理文件deploywebservice.bat。

     其中E:\workspace\Libwebservice是存放axis对应的jar文件的文件夹,现在将所有的jar文件都加入到此文件夹中。

     -l后的参数是本地要发布WebService的AdminService对应的访问地址。

     最后deploy.wsdd是对应的配置文件名称。

(3) 将deploy.wsdd文件和deploywebservice.bat文件复制到同一个文件夹下,执行deploywebservice.bat批处理文件,就可以将deploy.wsdd中描述的Java类发布为WebService。发布完成之后再访问http://host:port/test_webservice/services 

从上图可以看出,发布成功后,多了一个HelloServices的服务。这样就说明HelloService发布成功了。

7、查看HelloServices的wsdl

     访问http://host:port/test_webservice/services/HelloServices?wsdl可以看到wsdl的内容