以前一直用公司搭建的WebService框架,自己则负责写逻辑,现在突然想把WebService一些细节给解决了,搞了一个晚上,终于把这个wsdd来发布服务端搞掂了,记录下来。
1、直接拷贝下载的Axis的axis到tomcat或者其他的一些容器下部署好。
2、写好那个服务端的逻辑。这里也不具体写了。
3、刚入门比较麻烦的就是写这个wsdd并编译了,先给个简单的模板。
-
<deployment xmlns="http://xml.apache.org/axis/wsdd/"
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<service name="这里是服务的名称,我见其他的一般都是用服务的类名" provider="java:RPC">
<parameter name="className" value="服务的包路径+服务类名"/>
<parameter name="allowedMethods" value="*"/>
</service>
</deployment>
这样的话就大概写好了,记得只要配置service的名字和service的路径就好了,上面的中文那里
4、生成一个wsdl
右键选择Run As --》Run Configurations
直接说着来吧。
在Java Application里面新建一个,在Main Class选项中填写org.apache.axis.wsdl.Java2WSDL
在Program arguments填写
-o BeanServer.wsdl
-l "http://localhost:8080/axis/services/BeanServer"
-n "urn:ckp"
-p"com.ckp" "urn:ckp"
axis.BeanServer
完事后Run一下就可以在工程目录下看到一个wsdl文件了
5、编译成server-config.wsdd
打cmd进控制台
输入这么句话:
java -Djava.ext.dirs=C:/apache-tomcat-6.0.32/apache-tomcat-6.0.32/webapps/axis/WEB-INF/lib org.apache.axis.client.AdminClient -lhttp://localhost:8080/axis/services/BeanServer?wsdl C:/apache-tomcat-6.0.32/apache-tomcat-6.0.32/webapps/axis/WEB-INF/deploy.wsdd
下面给个解释:
C:/apache-tomcat-6.0.32/apache-tomcat-6.0.32/webapps/axis/WEB-INF/lib
这个是我机子上的axis的lib的路径
lhttp://localhost:8080/axis/services/BeanServer?wsdl
这个是我生成的wsdl文件,可以用myeclipse生成的
C:/apache-tomcat-6.0.32/apache-tomcat-6.0.32/webapps/axis/WEB-INF/deploy.wsdd
这个是我在3点写的deploy.wsdd
用http://localhost:8080/axis/services/BeanServer?wsdl可以看到发布成功的webservice的服务端的配置文件了。
来源:Linux社区 作者:userhzw
本篇文章来源于 Linux公社网站(www.linuxidc.com) 原文链接:http://www.linuxidc.com/Linux/2012-06/62806.htm