Web Service 之 axis (3)——手动发布篇

手动发布

1、将HelloWorld.java编译成HelloWorld.class(如果类含有包,则将包与类全部),放到tomcat-5.0.28/webapps/axis/WEB-INF/classes下

2、在tomcat-5.0.28/webapps/axis/WEB-INF下新建deploy.wsdd文件,即SOAP服务发布描述文件

deploy.wsdd

<deploymentxmlns="http://xml.apache.org/axis/wsdd/"xmlns:java="http://xml.apache.org/axis/wsdd/providers/java"target="_blank">

<servicename="HelloWorld"provider="java:RPC">

<parametername="className"value="HelloWorld"/>

<parametername="allowedMethods"value="sayHello"/>

</service>

</deployment>

注解:

<parametername="className"value="HelloWorld"/>HelloWorld:表示类,如果类有所属包,则value的值需要填写包名+类名,如:com.axis.HelloWorld,否则会导致不能找到类异常。

<parametername="allowedMethods"value="sayHello"/>sayHello:表示类(HelloWorld)中的方法,如果类中有很多方法时value值可以为*

在DOS下转换目录到tomcat-5.0.28/webapps/axis/WEB-INF,命令:

如果环境变量中有配置AXISCLASSPATH,则用

java-cp%AXISCLASSPATH%org.apache.axis.client.AdminClientdeploy.wsdd

如果环境变量中没有配置AXISCLASSPATH,则用

java-cplib/axis.jar;lib/commons-discovery-0.2.jar;lib/commons-logging-1.0.4.jar;lib/axis-ant.jar;lib/jaxrpc.jar;lib/log4j-1.2.8.jar;lib/saaj.jar;lib/wsdl4j-1.5.1.jarorg.apache.axis.client.AdminClientdeploy.wsdd

java-Djava.ext.dirs=liborg.apache.axis.client.AdminClientdeploy.wsdd

命令运行成功后,目录下多了一个server-config.wsdd文件,这就是axis的配置文件,以后所有的服务发布描述都会在里面找到。(当然,你可以直接修改它,不用再写deploy.wsdd)

打开浏览器,在地址栏输入:http://localhost:8080/axis/servlet/AxisServlet你就会看到你的服务已发布

新创建一个项目,编写个客户端程序访问一下:(这里引用上面的客户端程序)

修改Stringendpoint="http://localhost:"+"8080"+"/axis/services/HelloWorld";

其它完全一样。

相关推荐