CXF wsdl2Java

一. 简介
Apache CXF 是一个Service框架,他简化了Service的创建, CXF实现了JAX-WS2.0规范,并通过了JAX-WS2.0 TCK; CXF和Spring无缝集成;CXF支持多种传输协议(HTTP, JMS, Corba等), 支持多种Binding数据格式(SOAP,XML,JSON等), 支持多种DataBinding数据类型(JAXB, Aegis) 。CXF基于Interceptor的架构,使得整个框架非常易于扩展。
二. 如何发布并调用简单的web service实例
2.1.下载:apache-cxf-2.1.1 http://cxf.apache.org/download.html
2.2. 新建java project ,并加入apache-cxf-2.0.7/lib所有包,编写要发布的web service 接口和实现
import javax.jws.WebService;
@WebService
public interface HelloWorld {
public String sayHello(String text);
}
import javax.jws.WebService;
@WebService(endpointInterface="test.HelloWorld")
public class HelloWorldImpl implements HelloWorld {
public String sayHello(String text) {
return "Hello" + text ;
}
}
@WebService 注解表示是要发布的web 服务
name:用于Interface,属映射到wsdl:portType element的name属性。
targetNamespace:用于Interface和implement,如果不指定,缺省会使用包名倒序做为wsdl名空间。
serviceName:用于implement,表示wsdl服务名。
portName:用于implement,表示wsdl:port 的name属性。
endpointInterface:用于implement,指定Interface全名,包括包名。
2.3.发布web service
public class Server {
protected Server() throws Exception {
System.out.println("Starting Server");
HelloWorldImpl implementor = new HelloWorldImpl();
String address = "http://localhost:9000/helloWorld";
Endpoint.publish(address, implementor);
}
public static void main(String args[]) throws Exception {
new Server();
System.out.println("Server ready...");
Thread.sleep(5 * 60 * 1000);
System.out.println("Server exiting");
System.exit(0);
}
}
运行后,在浏览器中输入http://localhost:9000/helloWorld?wsdl将显示这个web service的wsdl.说明web service发布成功。
2.4.下面就开始创建一个客户端程序,访问这个web service, 同样新建java project ,并加入apache-cxf-2.0.7/lib所有包,由于CXF已经提供wsdl转化成java 的命令工具,所以创建一个build.xml,用来生成客户端程序。Bulid.xml内容如下:
<?xml version="1.0"?>
<project name="cxf wsdl2java" basedir=".">
<property name="cxf.home" location ="${basedir}/WebRoot/WEB-INF/"/>
<path id="cxf.classpath">
<fileset dir="${cxf.home}/lib">
<include name="*.jar"/>
</fileset>
</path>
<target name="cxfWSDLToJava">
<java classname="org.apache.cxf.tools.wsdlto.WSDLToJava" fork="true">
<arg value="-client"/>
<arg value="-d"/>
<arg value="src"/>
<arg value="http://localhost:9000/helloWorld?wsdl"/>
<classpath>
<path refid="cxf.classpath"/>
</classpath>
</java>
</target>
</project>
或者:配置环境变量%CXF_HOME%=E:/WebService/CXF/apache-cxf-2.1.1/apache-cxf-2.1.1(以我的目录为例),并在PATH后加上;%CXF_HOME%/bin
在cmd命令行中输入wsdl2java如果显示其用法表示配置好了。
输入:wsdl2java -d src - client http://localhost:9000/helloWorld?wsdl
其作用上面的build.xml作用一样。
附加:wsdl2java用法:
wsdl2java -p com -d src -all aa.wsdl
-p 指定其wsdl的命名空间,也就是要生成代码的包名:
-d 指定要产生代码所在目录
-client 生成客户端测试web service的代码
-server 生成服务器启动web service的代码
-impl 生成web service的实现代码
-ant 生成build.xml文件
-all 生成所有开始端点代码:types,service proxy,,service interface, server mainline, client mainline, implementation object, and an Ant build.xml file.
详细用法见:http://cwiki.apache.org/CXF20DOC/wsdl-to-java.html
2.5.调用web service
public class MyClient {
public static void main(String[] argv) {
HelloWorld hello = new HelloWorldImplService().getHelloWorldImplPort();
System.out.println(hello.sayHello("Tom") );
}
}
注意:运行时,要一定先要发布web sevice.
三. 参考资料
1.CXF 主页: http://cxf.apache.org/
2. CXF中文讨论组: http://groups.google.com/group/cxf-zh
3. Web service: http://www.w3school.com.cn/webservices/index.asp
4. WSDL: http://www.w3school.com.cn/wsdl/index.asp
5. SOAP:http://www.w3school.com.cn/soap/index.asp
-----------------------------------------------------------以上是参考资料,以下是自己的实践-----------------------------------------------------------------------------
我在操作过程中,发现了一个方法的参数resultCode,以及另一个方法的voteCode都让我误操作定义为了错误的类型。
因此需要对 WSDL进行修改后,将其放置在:D:/test/0328目录下面。
我按照上面的地址下载到二级制压缩文件 apache-cxf-2.3.3.zip以后要注意,不要下载包含有src的
例如: apache-cxf-2.3.3-src.tar.gz
解压缩到D:/work/lib/apache-cxf-2.3.3
配置环境变量 CXF-HOME 为“D:/work/lib/apache-cxf-2.3.3”
增加 path “%CXF-HOME %bin” 后,
在cmd下运行
D:/>cd test
D:/test>cd 0328
D:/test/0328>wsdl2java -frontend jaxws21 -p com.chinatelecom.jx.vote.inf.partner
*wsdl
即可。完成代码的生成。覆盖掉原来的代码即可。
Java小白入门200例81之Java接口 作者简介 作者名:编程界明世隐 简介:优快云博客专家,从事软件开发多年,精通Java、JavaScript,博主也是从零开始一步步把学习成长、深知学习和积累的重要性,喜欢跟广大ADC一起打野升级,欢迎您关注,期待与您一起学习、成长、起飞! 引言 很多Java初学者问我,新手明明很用心、很努力学习的Java知识,转头又忘记了,很让人犯愁,小白如何能够快速成长、成为大牛呢? 其实要成为大神的技巧只有一个:“多学多练”,于是明哥就整理了比较典型的练习实例,通过练习能够快速提升编码技巧和熟练度,让你在成为大 阅读详情

相关推荐

深度学习与神经网络有什么区别

人工神经网络(ArtificialNeuralNetwork,即ANN)是从信息处理角度对人脑神经元网络进行抽象,是20世纪80年代以来人工智能领域兴起的研究热点,其本质是一种运算模型,由大量的节点(或称神经元)之间相互联接构成,在模式识别、智能机器人、自动控制、生物、医学、经济等领域已成功地解决了许多现代计算机难以解决的实际问题,表现出了良好的智能特性。...

super67269的博客 8488

如何使用CXF的wsdl2java工具

1.下载CXF ,博主使用的是3.3.13版本,链接路径 里面有很多文件,我们只需要按照以下原则选择即可注意:不要下载带src的文件,那是源码,不适合在此使用。2.下载JDK ,博主使用的是V1.8版本,链接路径 网上建议的版本匹配关系如下,在此使用JDK1.8搭配CXF3.3.13也是可行的。CXF环境配置 解压apache-cxf-3.3.13.zip ,然后将bin文件夹和lib文件的目录添加到环境变量中即可,具体如下: 打开环境变量步骤:此电脑/我的电脑->右击选择属性->高级系统设置->环境变量

belowm的博客 1321

展锐双摄帧同步实战:从配置到调试的完整避坑指南

本文深入剖析了在展锐平台上实现双摄帧同步的完整流程与核心技术。详细对比了硬件帧同步与软件帧同步的差异、应用场景及核心挑战,提供了从XML配置、驱动层适配到调试验证的实战指南。重点强调了硬件帧同步必须与固定帧率强绑定这一关键避坑点,并分享了针对景深虚化等场景的同步质量验证方法及长稳测试策略。

kiwi8的博客 401

CXF 中使用 wsdl2java 示例

CXF 使用 wsdl2java 命令生成相关java文件 常见命令: wsdl2java -d D:\\src  -p com.xx -client http://xxxService?wsdl -d  文件将会在哪个目录生成 -p  生成Java类的默认包名 -client 生成客户端的代码 http://xxxService?wsdl 目标地址的WSDL 如果是调用Java平台的...

sword_happy的博客 1561

薄膜电容寿命预测全解析:从理论到实践,5步搞定可靠性评估

本文全面解析薄膜电容寿命预测的理论与实践,提供五步可靠性评估流程,涵盖温度应力、电压应力等关键因素分析,并分享提升寿命的实用技巧。特别适用于新能源、电动汽车等领域的设计工程师,帮助准确预测薄膜电容在实际工况下的使用寿命。

weixin_33712987的博客 432

仪表数字图像识别的传统方法

虽然现有很多机器学习算法能够准确地识别数字,但是传统方法对于一些需要离线识别且计算能力有限的下位机设备来说,仍然有非常不错的效果。因此,今天就向大家讲解一下传统的数字识别方法在仪表读数方面的应用。 1.图像预处理技术 1.1 主要流程 图像处理依次需要进行图片预处理、字轮区域定位、字符分割和字符识别等过程。其中图像处理流程如下图所示。 2. 详细过程 2.1 灰度化 为了减小图像原始数据量,本系...

XYZ 4523

快速上手使用CXF

一.  简介Apache CXF 是一个Service框架,他简化了Service的创建, CXF实现了JAX-WS2.0规范,并通过了JAX-WS2.0 TCK; CXF和Spring无缝集成;CXF支持多种传输协议(HTTP, JMS, Corba等), 支持多种Binding数据格式(SOAP,XML,JSON等), 支持多种DataBinding数据类型(JAXB, Aegis) 。C

小强的专栏 1471

xctf攻防世界 MISC高手进阶区 low

1. 进入环境,下载附件 给出的一张bmp图片,没有其他信息 2. 问题分析 扔进binwalk中,没有发现有用信息 使用zsteg,没有有用信息 塞入StegSolve中,发现有点猫腻,如图: 有点二维码的感觉,emmm,需要像素处理,但不知道如何下手,参考网上的wp,发现是让使用lsb隐写,copy代码: from PIL import Image img = Image.open('./pic/low.bmp') img_tmp = img.copy() pix = img_tmp.load()

l8947943的博客 1万+

wsdl2java 工具_CXF中 wsdl2java工具的使用方法

下面是一个使用wsdl2java的例子:C:\Users\Administrator>F:F:\>cd misps2F:\misps2>方法2:F:\phone>wsdl2java -d src -client http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx?wsdl环境配置:1、下载apache-...

weixin_35094083的博客 1739

【异常】OpenClaw提示异常 1302:您的账户已达到速率限制,请您控制请求频率

摘要:系统返回1302错误码提示"账户已达到速率限制",表明请求频率超过服务阈值。主要原因是并发请求数达上限或请求过于密集。解决方案包括:降低并发请求量、引入请求队列机制平滑流量,或根据服务规则提升账户权益等级以获取更高并发额度。建议优先优化请求频率控制策略,避免触发系统限流机制。

奶爸的编程之路,也就一周冷个三天 1147

太空安全卫士:基于YOLOv5的空间态势感知系统(实现轨道碰撞预警与太空环境保护)

做完这个项目,你会发现自己完整走过了“数据采集→标注→模型训练→功能集成→界面开发”的毕设全流程,这不仅是技术能力的证明,更是对“技术守护宇宙安全”这一理念的实践。答辩时,你可以重点讲这几点:系统解决了航天监测的哪些痛点、YOLOv5在太空目标检测中的性能优势、系统未来能怎么优化(比如对接航天监测网络、实现实时轨道预测)。未来,这个系统还能往“更智能”的方向发展:比如结合轨道计算预测碰撞风险、开发移动端APP让天文爱好者参与太空垃圾上报、在航天任务中实现全自动避障决策……想象空间很大。

m0_71589036的博客 90

cxf框架wsdl2java 命令详解

cxf生成javaa客户端并调用webservice服务

weixin_42304484的博客 1610

图像紫边消除(depurple)

对图像紫边形成原因、消除方法进行了介绍。

沧海一升的博客 7565

wsdl2java教程_[Java教程]apache CXF wsdl2java工具的使用

[Java教程]apache CXF wsdl2java工具的使用0 2016-02-28 11:00:08cxf的wsdl2java命令和JDK的wsimport命令的区别和使用JDK提供了一个wsimport.exe的命令,主要是用于将WebService生成客户端代码,然后好调用WebService。wsimport 是根据JDK1.6.0_21及以上的生成本地代码的,它只能解...

weixin_35615322的博客 2706

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

apache cxf wsdl2java命令

1、下载apache-cxf  2、进入cmd 3、进入cxf的bin目录 D:\apache-cxf-3.1.6\bin> wsdl2java  -d d:/src/code -encoding UTF-8 -client -fe jaxws21 d:/src/20160831/XXXXXX.WSDL apache-cxf 官方文档:http://cxf.apache.org/d

sixp512720288的博客 816

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

cxf 本地wsdl_CXF wsdl2java 详解及常见问题

CXF提供从wsdl文件生成java代码的工具脚本:%CXF_HOME%\bin\wsdl2java.bat脚本参数详解:OptionInterpretation-?,-h,-helpDisplays the online help for this utility and exits.-fe frontend-nameSpecifies the frontend. Default is JAXW...

weixin_33733742的博客 933

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

cxf wsdl2java 命令

使用cxf 自带的wsdl2java 工具进行webservice 的客户端程序生成 前提是服务器端webservice 已经发布 下载 apeache-cxf-xxxx  在电脑环境设置中增加 CXF_HOME=apeache-cxf-xxxx 所在位置 path 中增加  %CXF_HOME%/bin; 在dos 环境下 输入 wsdl2java ,如果报出命令方法,则设

luofuIT成长记录 1443

区分使用Axis2和CXF的wsdl2java命令

在学习Web Service时,会接触到两个流行的Web Service框架CXF和Axis2,也需要对其进行环境变量的配置,配制方法如下: ·CXF环境变量配置: 1.在CLASSPATH中添加:D:\Libraries\apache-cxf-3.1.7\apache-cxf-3.1.7\lib 2.新建CXF_HOME D:\Libraries\apache-cxf-3.1.

JusterDu的博客 2432

java cxf 参数_Cxf -wsdl2java 使用参数介绍

G:\cxf\apache-cxf-3.1.6\bin>wsdl2java -hwsdl2java -fe|-frontend -db|-databinding -wv -p * -sn -b * -reserveClass * -catalog -d -compile -classdir -impl -server -client -clientjar -all -autoName...

weixin_39645165的博客 199

cxf wsdl2java wsdl_通过cxf 包的 wsdl2java 生成客户端 测试webservice

apache CXF wsdl2java工具的简单使用一、下载apache cxf的包,如apache-cxf-2.7.10.zip,地址:cxf.apache.org/download.html二、解压apache-cxf-2.7.10.zip至某一目录,如D:\apache-cxf-2.7.10三、设置环境变量1、CXF_HOME=D:\apache-cxf-2.7.102、在path后面加上...

weixin_31235909的博客 169

apache CXF wsdl2java

使用步骤如下: 一、下载apache cxf的包,如apache-cxf-2.7.10.zip 二、解压apache-cxf-2.7.10.zip至某一目录,如D:\apache-cxf-2.7.10 三、设置环境变量 1、CXF_HOME=D:\apache-cxf-2.7.10 ...

chibanla1638的博客 198

CXF: CXF中wsdl2java命令环境配置以及wsdl2java工具的使用

一、环境配置         新建CXF_HOME      C:\ProgramFiles(my)\apache-cxf-2.7.2         在CLASSPATH          %CSF_HOME%\lib         在PATH中添加           %CSF_HOME%\bin         验证:                 操作   win+R

Sunny 1580

cxf wsdl2java 生成服务端代码,cxf wsdl生成服务器端

基础知识__WebService基础知识__WebService本文由 Luzhuo 编写,请尊重个人劳动成果,转发请保留该信息. 原文: http://blog.youkuaiyun.com/Rozol/article/details/50511873 微博: http://weibo.com/u/2524456400...文章lz.luzhuo2016-01-131662浏览量通过wsdl2java工具生...

weixin_36368404的博客 475

java2wsdl cxf_cxf使用 wsdl2java

1、需要 一个包:apache-cxf-2.6.1.gz这个包里有好多jar包,一定要下载下来。将此包解压,我是放在:E:\CXF\apache-cxf-2.6.1 2、将URL调用成功的页面内容,另存为XML 3、在cmd中通过wsdl2java生成客户端文件 cd 进入apache-cxd-2.6.1\bin目录执行命名:wsdl2java -p service.webservice.clie...

weixin_35854667的博客 512

【开源宝藏】一探CXF下的WSDL2Java Gradle插件

【开源宝藏】一探CXF下的WSDL2Java Gradle插件 在寻找提升企业级应用开发效率的工具时,我们常会遇到接口规范与代码实现之间的鸿沟。今天,让我们一起揭开一个虽已退役但仍然充满价值的开源宝藏——wsdl2java Gradle插件的神秘面纱。虽然原作者的兴趣转移导致了维护的停止,但它的存在仍旧为那些依赖Web服务定义语言(WSDL)来快速生成Java代码的开发者们提供了极大的便利。 项目...

gitblog_00004的博客 478

cxf wsdl to java_Cxf -wsdl2java 使用参数介绍

G:\cxf\apache-cxf-3.1.6\bin>wsdl2java -hwsdl2java -fe|-frontend -db|-databinding -wv -p * -sn -b * -reserveClass * -catalog -d -compile -classdir -impl -server -client -clientjar -all -autoName...

weixin_39951930的博客 211
上一篇: Spring+CXF 实现类无法注入属性的问题
下一篇: 使用mysqldump工具备份还原Mysql数据库实例及参数详细说明
linshow26
博客等级 码龄14年 0粉丝 54原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值