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
    评论
要在Java中实现SOAP,可以按照以下步骤进行操作: 1. 导入所需的库:在Java项目中,你需要导入相关的SOAP库,如Apache Axis、Apache CXF、JAX-WS等。这些库提供了处理SOAP协议的API和工具。 2. 创建SOAP客户服务:根据你的需求,可以创建一个SOAP客户SOAP服务SOAP客户用于调用远程SOAP服务,而SOAP服务用于接收和处理来自SOAP客户的请求。 3. 生成SOAP客户代码服务代码:使用工具或命令行来生成客户代码服务代码。这些工具可根据WSDL(Web Services Description Language)文件生成相应的Java类,以便与远程服务进行通信。 4. 编写客户代码服务代码:根据生成代码,编写客户服务Java代码。在客户代码中,你可以使用生成的类来创建SOAP请求并发送给远程服务。在服务代码中,你可以定义SOAP服务的操作和实现。 5. 配置SOAP连接:在客户代码中,你需要配置SOAP连接,包括远程服务的URL、SOAP协议版本、SOAP消息格式等。这些配置可以通过代码或配置文件进行设置。 6. 发送SOAP请求:使用客户代码发送SOAP请求到远程服务。你可以调用生成的类的方法来构建SOAP消息,并使用SOAP连接发送请求。 7. 处理SOAP响应:在客户代码中,你需要处理从远程服务接收到的SOAP响应。你可以解析SOAP消息,并提取所需的数据。 8. 实现服务逻辑:在服务代码中,你可以实现SOAP服务的逻辑。根据SOAP请求的操作,你可以执行相应的操作,并生成SOAP响应。 9. 部署和测试:将客户代码部署到客户应用程序中,并将服务代码部署服务容器中。然后,你可以测试SOAP通信是否正常工作。 这些是实现SOAP的一般步骤,在具体的实现中可能会根据不同的库和框架有所变化。建议参考相关文档和教程以获取更详细的步骤和示例代码

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值