AXIS开发Web服务

AXIS开发Web服务

一 . 环境搭建

由于 AXIS 本身是基于 JAVA 语言开发的项目,并且是以 Web 应用形式发布的,因此它运行时需要一个应用服务器作为支撑。为

了方便我们这里选用的是 Tomcat 。由于 AXIS 本身需要用到处理 XML 信息的包,所以我们建议使用 JDK1.5 并安装 Tomcat

6.0。下面是环境搭建步骤,读取根据自身情况进行安装。

安装 JDK1.5
安装 Tomcat 6.0到 C:\Tomcat 并验证安装是否成功
下载 AXIS 项目打包文件 axis.zip 解压缩后将目录中的 webapps 目录下的 axis 子目录拷贝到 C:\Tomcat\webapps 下。
验证 AXIS 的安装:重新启动 Tomcat 服务器后打开浏览器输入网址 http://localhost:8080/axis 后,点击链接 "Validate"

来验证 Axis 所需的几个 JAVA 包是否齐全。 

 

点击超链接Validate后,AXIS会自动检查所需的每一个JAVA组件,这协组件分为:必需组件以及可选组件,必须保证所有必需组

件都存在。

二. Web Service服务端开发


经过了前两步之后我们就可以开始Web服务之旅了!大多数人在学习一种编程语言的第一步都是从Hello world程序开始的,我们

也不例外。我们将提供这样一个Web服务,通过给它传入姓名,服务返回:你好[姓名],欢迎来到Web服务的世界。这就是我们的

需求。我们将马上根据AXIS的要求完成我们的需求,你就会发现原来Web服务可以这么简单!

编写JAVA类Hello.java,内容如下:

public   class  Hello {
 
public String hello(String name){
  
if(name==null)
   name 
= "";
  
return "你好"+name+",欢迎来到Web服务的世界!";
}

}

 仅此而已,无需编译,将该文件改名为Hello.jws并拷贝到AXIS应用目录C:\Tomcat\webapps\axis下。

下面我们就可以测试该Web服务了,打开浏览器并输入刚刚创建的文件名对应的URL地址http://localhost:8080/axis/Hello.jws

浏览器显示如下结果:

There is a Web Service here    
        Click to see the WSDL 
 

点击页面上的链接查看该Web服务对应的WSDL信息如下所示(我们将在下一小节简单介绍WSDL)

 

<? xml version="1.0" encoding="UTF-8"  ?>
-
< wsdl:definitions
 
targetNamespace ="http://localhost:8080/axis/Hello.jws"
 xmlns
="http://schemas.xmlsoap.org/wsdl/"
 xmlns
="http://www.w3.org/2000/xmlns/"
 xmlns:apachesoap
="http://xml.apache.org/xml-soap"  
 xmlns:soapenc
="http://schemas.xmlsoap.org/soap/encoding/"
 xmlns:impl
="http://localhost:8080/axis/Hello.jws"  
 xmlns:intf
="http://localhost:8080/axis/Hello.jws"
 xmlns:wsdlsoap
="http://schemas.xmlsoap.org/wsdl/soap/"  
 xmlns:xsd
="http://www.w3.org/2001/XMLSchema"
 xmlns:wsdl
="http://schemas.xmlsoap.org/wsdl/" >
 - 
< wsdl:message  name ="helloRequest" >
 
< wsdl:part  name ="name"  type ="xsd:string"   />  
 
</ wsdl:message >
 + 
< wsdl:message  name ="helloResponse" >
 - 
< wsdl:portType  name ="Hello" >
 - 
< wsdl:operation  name ="hello"  parameterOrder ="name" >
 
< wsdl:input  name ="helloRequest"  message ="intf:helloRequest"   />  
 
< wsdl:output  name ="helloResponse"  message ="intf:helloResponse"   />
 
</ wsdl:operation >  
 
</ wsdl:portType >
 - 
< wsdl:binding  name ="HelloSoapBinding"  type ="intf:Hello" >  
 
< wsdlsoap:binding  style ="rpc"  transport ="http://schemas.xmlsoap.org/soap/http"   />
 - 
< wsdl:operation  name ="hello" >  
 
< wsdlsoap:operation  soapAction =""   />
 - 
< wsdl:input  name ="helloRequest" >
 
< wsdlsoap:body  use ="encoded"  encodingStyle ="http://schemas.xmlsoap.org/soap/encoding/"  
  namespace
="http://DefaultNamespace"   />   
 
</ wsdl:input > < wsdl:output  name ="helloResponse" >   
 
< wsdlsoap:body  use ="encoded"  encodingStyle ="http://schemas.xmlsoap.org/soap/encoding/"
  namespace
="http://localhost:8080/axis/Hello.jws"   />    
 
</ wsdl:output >  
 
</ wsdl:operation >  
 
</ wsdl:binding >
 - 
< wsdl:service  name ="HelloService" >
 - 
< wsdl:port  name ="Hello"  binding ="intf:HelloSoapBinding" >
 
< wsdlsoap:address  location ="http://localhost:8080/axis/Hello.jws"   />  
 
</ wsdl:port >   
 
</ wsdl:service >  
 
</ wsdl:definitions >

 

到此我们已经完成了hello的Web服务了,那我们怎么告诉用户如何来使用该服务呢?我们只需要告诉用户我们的Web服务的URL地

址:http://localhost:8080/axis/Hello.jws?wsdl就可以了!下一节我们将介绍如何通过这个地址来访问对应的Web服务。

你可能感兴趣的:(AXIS开发Web服务)