Webservice(axis)安装部署完全手册

WebService 的部署方法

By 龚哲(Bruce)

分为安装和部署两个步骤:

 

安装: 安装又分为服务器端(TOMCAT)安装和客户端(系统环境)安装。

服务器端(TOMCAT):

1、将axis.waraxis工具包的压缩后文件)拷贝至%TOMCAT_HOME%\webapps目录下。

2点击:http://localhost:8080/axis,TOMCAT自动在axis.war的同目录生成同名文件夹,浏览器访问的内容就来源于此。页面成功打开就代表配置成功!

3点击Validation后进入页面,只要Needed Components都到齐了,没有报错就OK。(说路径没找到也行的)

4、点击List查看已经在该TOMCAT上发布的WebService

 

客户端(系统环境):

如果是用IDE开发的话,就不需要这步了,直接导入%AXIS_LIB%里面的jar包就行。

此步骤针对于DOS环境下解释运行Java客户端的应用。如果要在客户端中用到相应的类(如ServiceCall),必须将%AXIS_LIB%里面的包的路径全部加入到系统设置的classpath中,其实际效果与在IDE中直接导包是一样的

 

部署部署主要有两种方法:JWS法和jar包导入法。

JWS法:

首先要说明,这是一种十分简陋及原始的方法,不适合进行大项目的设置。但是能迅速令你看到WebService的喜人成果。

1、将你要部署在服务器上的应用MyCalculator.java(包含加减乘除方法)直接拷贝至%TOMCAT_HOME%\webapps\axis目录下,后缀名改为.jws

2、点击:http://localhost:8080/axis/MyCalculator.jws,如果成功显示出界面,则表示服务应用部署成功。

3、DOS环境下,编译和运行客户端:CalcClient.java如果结果正常,那就表明部署成功了。

 

Jar包导入法:

1、将一个应用类抽象出接口,并编译他们,使他们在DOS下,可以直接在classpath下被访问。

2、根据接口,生成WSDL Service Descriptor。要用到axis包中的Java2WSDL工具。

DOS环境中写下如下命令:

java org.apache.axis.wsdl.Java2WSDL -o calculator.wsdl(要生成的WSDL文件名

-n http://www.tmax.cn/ws(XML文件中会用到的命名空间) 

-l http://localhost:8080/axis/services/Calculator(部署的位置) tmax.Calculator(类的引用名)

命令执行后,会有一个calculator.wsdl文件出现在与tmax文件夹同目录的文件夹中。

3、根据WSDL生成stubstub可以把我们的服务应用绑定到axis框架中,他们生成后会与服务应用的.java文件在一起,用于向axis框架解释如何执行应用文件。

java org.apache.axis.wsdl.WSDL2Java -o ./ -p tmax -s calculator.wsdl

 

记住DOS一定要保持在tmax的父文件夹目录下。

Calculator_PortType: Defines the remote interface to the service.

4、打开stub中以SoapBindingImpl结尾的文件,然后修改它每个类的返回值,改成托管类型。最后再编译所有的java文件一次。

5、打包tmax中的类文件:

jar -cf calc.jar tmax/*.class

然后就能在与tmax同目录下看到一个名字为calc.jarjar包。

6、拷贝jar包到%TOMCAT_HOME%\webapps\axis\WEB-INF\lib中:

copy calc.jar "%TOMCAT_HOME%\webapps\axis\WEB-INF\lib"

7、用AdminClient工具来部署该jar包(因为jar包已经拷入类库中,所以可以直接通过包名直接调用):

java org.apache.axis.client.AdminClient tmax/deploy.wsdd

8、当部署好了后,就是用客户端进行测试了。随便建立一个目录,根据WebServiceURL,在该目录中生成一个包,在包中,生成所有的stub(本地的Webservice描述器):

java org.apache.axis.wsdl.WSDL2Java -o ./ -p tmax -s

http://localhost:8080/axis/services/Calculator?wsdl

9、建立一个新的客户端java文件,里面的main函数中写如下代码: 

public static void main(String [] args) {

CalculatorService service
= new CalculatorServiceLocator();

Calculator_PortType calc;

try {

calc
= service.getCalculator();

int i=calc.add(15, 6);

int j=calc.subtract(15, 6);

System.out.println(
"15 + 6 = " + i);

System.out.println(
"15 - 6 = " + j);

}
catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

运行,得到相应结果即为成功!

 

要看如何用Eclipse依靠插件的方法生成aar文件来配置webservice

http://www.javaeye.com/topic/284387 

posted @ 2011-03-07 07:28  @聪聪@  阅读(1348)  评论(0编辑  收藏  举报