以前一直用公司搭建的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 provider="java:RPC">
<parameter value="服务的包路径+服务类名"/>
<parameter 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 -l: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的路径
l: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
用:8080/axis/services/BeanServer?wsdl可以看到发布成功的webservice的服务端的配置文件了。