soap 服务端wsdl生成java代码及部署

环境:eclipse3.7 + Tomcat7.0.29 + axis(eclipse自带,1.x系列)

新建一个dynamic Web Project
如果eclipse仅仅安装Tomcat的话,可以忽略这个主意事项。
否则,在Target runtime 选项选择Tomcat或者None(因为选择其他服务器的话,从wsdl无法反向生成java)
 
右键项目,new-->other-->web services-->wsdl file
next 输入文件名, next

在Target namespace 输入命名空间,http://test.com/soap(这个决定你反向生成java文件所在的包,反向生成java后的包名为com.test.soap) 至于soap binding普遍采用document,rpc的好像比较麻烦。
点击finish
wsdl文件design视图,一般通过更改这个视图来改wsdl,改源码太麻烦了,由于这篇博客主要讲部署问题,所以soap不谈,需要的话请看
http://www.cnblogs.com/hanlsheng/archive/2011/01/24/1943052.htmlendpoint可以不用改,改了我也不知道会咋样。
 
右键工程,new-->other-->web services-->web service-->next
 
web service type 选择Top down java bean Web service (down那个是用java类生成soap服务的)
service service difinition :wsdl所在位置
服务我选deploy service(由于第一次认真接触这个,其他的不知道啥作用) service旁边的Configuration 点击相应的项,server runtime选择Tomcat ,
web service runtime选择Axis,不选Axis2(Axis2配置比较繁琐,同事说用Axis即Axis1.x系列) service project:选择你的项目
至于client 选择no client 一般默认
如果之前新建项目时的Target runtime不是tomcat或者none,此时就会报错。
 
点击Finish
 在src下生成所需的java类,一般xxx(wsdl名字)SoapImpl实现业务逻辑。
webcontent lib多了axis所需的jar,在web-inf有deploy.wsdd
右键工程,export-->web-->war file,
将war文件生成到tomcat安装目录下的webapp下
启动Tomcat 
项目.war会被解压
打开浏览器,输入http://localhost:8080/Soap/services/AdminService,若显示
 表示Axis安装成功
 
点击我的电脑,去Tomcat安装目录webapp下的项目目录,将deploy.wsdd拷贝到web-inf下,
打开cmd,进到Tomcat安装目录webapp下的项目目录soap\web-inf下
输入java -Djava.ext.dirs=lib org.apache.axis.client.AdminClient -lhttp://localhost:8080/SOAP(项目名)/services/AdminService deploy.wsdd
cmd 会生成web-inf 下生成server-config.wsdd(发布服务需要的东东)
server-config.wsdd考到项目的web-inf(不是tomcat安装目录下的)
 
将项目重新部署到Tomcat,浏览器输入http://localhost:8080/Soap(项目名)/services/soapSOAP?wsdl(wsdl文件名+SOAP)
如果显示wsdl内容则大功告成。
 
至于soap客户端,可以采用生成web client或者用soap ui。

转载于:https://www.cnblogs.com/visoncheng/archive/2013/03/27/2985623.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值