jboss7的JAX-WS客户端
jboss版本 jboss-eap-6.1, 实际上就是jboss-as-7.x.fianal
本篇讨论使用jboss7自带的cxf库,使用wsdl文件生成和部署jax-ws的客户端程序。
首先明确一点,soap形式的jax-ws的服务/客户两端所依赖的技术框架原理上是么有任何关系的,应此当你拿对方服务的wsdl时,只需考虑你客户端本身的技术栈(很长一段时间我都被误导了)。 我写了一个项目部署在jboss-eap-6.1,查了下它的的jax-ws是cxf实现的,那就索性使用cxf框架构建客户端,省时省力。
步骤:
1.使用jboss自带的wsdl2java工具生成客户端stub
${JBOSS_HOME}/bin/wsconsume.sh(bat) myservice.wsdl
wsconsume工具参考文档。
https://docs.jboss.org/author/display/JBWS/wsconsume
2. 打包生成wsconsume生成的class文件。使用jar命令
${JAVA_HOME}/bin/jar cvf myservcie.jar -C classdir/ .
3. 将jar包添加到你的项目中,并添加项目对jboss cxf的module的依赖。
修改WEB-INFO下的jboss-deployment-structure.xml。 这个文件的作用和意义可自行了解jboss-as的module结构和class load机制
添加对 <module name="org.apache.cxf" />的依赖。
4. 编写调用代码
service = new yourSevice(new URL("your service location"),new Qname("you service's target name","servcie name"));
service_portType = service.getYourServiceHttpSoap12Endpoint()
service_portType.servicemethod();
大功告成。
对于更多jax-ws客户端的知识可参考我另一篇总结,有源码的
http://www.cnblogs.com/surprizeFuture/articles/4784711.html
jboss7的JAX-WS客户端的更多相关文章
- Atitit 动态调用webservice与客户端代理方式调用
Atitit 动态调用webservice与客户端代理方式调用 方式1: 使用call.invoke 直接调用WSDL,缺点:麻烦,不推荐--特别是JAVA调用.NET的WS时,会有不少的问题需要解 ...
- Web Service-- 使用 JDK 发布 WS
Web Service,即“Web 服务”,简写为 WS,从字面上理解,它其实就是“基于 Web 的服务”.而服务却是双方的,有服务需求方,就有服务提供方.服务提供方对外发布服务,服务需求方调用服务提 ...
- WebServices客户端代码生成
方式一: 官网下载cxf运行包:http://cxf.apache.org/download.html axis2:http://axis.apache.org/axis2/java/core/dow ...
- 如何让服务端同时支持WebSocket和SSL加密的WebSocket(即同时支持ws和wss)?
自从HTML5出来以后,使用WebSocket通信就变得火热起来,基于WebSocket开发的手机APP和手机游戏也越来越多.我的一些开发APP的朋友,开始使用WebSocket通信,后来觉得通信不够 ...
- electron教程(二): http服务器, ws服务器, 进程管理
我的electron教程系列 electron教程(一): electron的安装和项目的创建 electron教程(二): http服务器, ws服务器, 进程管理 electron教程(三): 使 ...
- iOS开发之 几本书
<object_c 编程之道书> <iOS 7 UI Transition Guide> iOS开发指南:从零基础到App Store上架[国内第一本iOS架构设计图书,涵盖i ...
- Java 5 、6、 7中新特性
JDK5新特性(与1.4相比)[转] 1 循环 for (type variable : array){ body} for (type variable : arrayList){body} 而1. ...
- weblogic项目转为tomcat之后出现的问题
解决java - JAX-WS和版本冲突 itPublisher分享于2017-03-19 推荐:JWS,JAX-WS,JAX-RS,REST,Restlet,SOAP(JAVA Web Servic ...
- WebSocket 学习(三)--用nodejs搭建服务器
前面已经学习了WebSocket API,包括事件.方法和属性.详情:WebSocket(二)--API WebSocket是基于事件驱动,支持全双工通信.下面通过三个简单例子体验一下. 简单开始 ...
- Spring 4 集成Apache CXF开发JAX-RS Web Service
什么是JAX-RS 在JSR-311规范中定义,即Java API for RESTful Web Services,一套Java API,用于开发 RESTful风格的Webservice. 工程概 ...
随机推荐
- 【2048小游戏】——原生js爬坑之封装行的移动算法&事件
引言:2048小游戏的核心玩法是移动行,包括横行和纵行,玩家可以选择4个方向,然后所有行内的数字就会随着行的移动而向特定的方向移动.这个行的移动是一个需要重复调用的算法,所以这里就要将一行的移动算法封 ...
- TestNG的參数化測试、共享线程池配置、參数默认值配置
在使用TestNG进行測试时,常常会使用到一些參数化配置,比方数据库.连接池.线程池数. 使用TestNG的參数@Parameter注解进行自己主动化读取 原创文章,版权全部.同意转载,标明出处:ht ...
- 关于meta标签的name="viewport" 概述
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scal ...
- php遍历对象属性,可以使用foreach,直接打印出属性
依然遵循私有属性不可以在外访问,(不能打印出来) 但可以在内部访问这个原则.
- 研发团队如何借助Gitlab来做代码review
代码review是代码质量保障的手段之一,同时开发成员之间代码review也是一种技术交流的方式,虽然会占用一些时间,但对团队而言,总体是个利大于弊的事情.如何借助现有工具在团队内部形成代码revie ...
- caffe--anaconda2--makefile.config--compile --ubuntu16.04
sea@sea-X550JK:/media/sea/wsWin10/wsUbuntu16.04/DlFrames/caffe$ cat Makefile.config: ## Refer to htt ...
- spring中bean的作用域属性single与prototype的区别
https://blog.csdn.net/linwei_1029/article/details/18408363
- mybatis的拦截器及分页机制
https://blog.csdn.net/ssuperlg/article/details/79847889
- EasyPlayer RTSP Android安卓播放器实现视频源快速切换
EasyPlayer现在支持多视频源快速切换了,我们介绍一下是如何实现的. 这个需求通常应用在一个客户端需要查看多个视频源的情况,比如多个监控场景轮播. 由于EasyPlayer的播放端已经放在Fra ...
- vue element-ui 自动获取光标
<el-input ref="customerInput"></el-input> this.$refs.mark.$el.querySelector('i ...