搭建Vc 调用应用AXIS的WEBSERVICE服务

来源:互联网 发布:cocos2dx 捕鱼优化 编辑:程序博客网 时间:2024/05/11 12:56
一、下载好JDK后,我们一步步的将他安装到我们的本地系统,比如安装到:C:/Program Files/Java目录下,然后就是配置环境变量了,我这里只介绍在Windows平台上的配置!步骤如下:

      我的电脑---属性---高级---环境变量---[系统变量]---编辑->变量名[JAVA_HOME]---变量值[C:/Program Files/Java/jdk1.5.0_12/bin]---确定;

      编辑->变量名[CLASSPATH]---变量值[.;%JAVA_HOME%/lib/dt.jar,%JAVA_HOME%/lib/tools.jar]((前面的.号千万不要忘记,它代表当前目录))---确定;

      找到系统变量中原有的[path]变量--编辑---在原有的值后加上---;%JAVA_HOME%/bin---确定;

      好了JDK环境的配置已经大功告成了,接下来你就应该重新启动你的Computer了,因为系统变量在重启后才会生效。

 二、下载AXIS项目打包文件axis-1_1.zip解压缩后将目录中的webapps目录下的axis子目录拷贝到C:/Tomcat/webapps下。

验证AXIS的安装:重新启动Tomcat服务器后打开浏览器输入网址http://localhost:8080/axis 后应该出现如下图所示页面,点击链接"Validate"来验证Axis所需的几个JAVA包是否齐全。



图2

点击超链接Validate后,AXIS会自动检查所需的每一个JAVA组件,这协组件分为:必需组件以及可选组件,必须保证所有必需组件都存在,如下图所示即为验证成功。




可能会缺少activation.jar
到所给网站上下载jaf-1_1-fr.zip,解压后将其拷入Tomcat/common/lib/文件夹下!重启服务


三. 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 就可以了!