根据命令行生成cxf客户端
2015-09-15 14:00
375 查看
根据命令行生成cxf客户端:
1. 首先确保自己的wsdl文件可以打开。
2. 下载apache-cxf-2.6.1.gz,可以到 http://cxf.apache.org/download.html 去下载最新的 Apache CXF 包,下载好后解压到某个目录中
3. 按ctrl+R,输入cmd,打开dos窗口。
![](http://img.blog.csdn.net/20150915135318432?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
进入apache-cxf-2.6.1\bin目录下
![](http://img.blog.csdn.net/20150915135416107?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
参数说明:
wsdl2java -p包名 -d生成文件路径
-verbose "wsdl文件路径"
-p 也就是package 对应java中的包
-d 输入目录,生成.java文件会在该目录,会自动添加-p参数配置的包路径
-client 生成客户端测试web service的代码.
-server 生成服务器启动web service的代码.
-impl 生成web service的实现代码.
-ant 生成build.xml文件.
-all 生成上面-client -server -impl -ant 对应的所有文件.
输入上述命令会在 D:work/hrss_client/src下生成文件夹com/fortunes/hrss/cxf/client
然后将文件夹复制到项目中,我生成的目录如下:
![](http://img.blog.csdn.net/20150915135555556?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
编写一个测试类测试客户端:
![](http://img.blog.csdn.net/20150915135646781?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
其中SERVICE、CxfWsdlPort可在生成的客户端代码中查找。
注:我的cxf实现类的注解如下:
1. 首先确保自己的wsdl文件可以打开。
2. 下载apache-cxf-2.6.1.gz,可以到 http://cxf.apache.org/download.html 去下载最新的 Apache CXF 包,下载好后解压到某个目录中
3. 按ctrl+R,输入cmd,打开dos窗口。
进入apache-cxf-2.6.1\bin目录下
参数说明:
wsdl2java -p包名 -d生成文件路径
-verbose "wsdl文件路径"
-p 也就是package 对应java中的包
-d 输入目录,生成.java文件会在该目录,会自动添加-p参数配置的包路径
-client 生成客户端测试web service的代码.
-server 生成服务器启动web service的代码.
-impl 生成web service的实现代码.
-ant 生成build.xml文件.
-all 生成上面-client -server -impl -ant 对应的所有文件.
输入上述命令会在 D:work/hrss_client/src下生成文件夹com/fortunes/hrss/cxf/client
然后将文件夹复制到项目中,我生成的目录如下:
编写一个测试类测试客户端:
其中SERVICE、CxfWsdlPort可在生成的客户端代码中查找。
public final static QName SERVICE = new QName("http://cxf.hrss.fortunes.com/", "CxfWsdlService"); public final static QName CxfWsdlPort = new QName("http://cxf.hrss.fortunes.com/", "CxfWsdlPort"); public static void main(String[] args) { //wsdlURL已绑定在生成的类中 CxfWsdlService preventIndulge = new CxfWsdlService(CxfWsdlService.WSDL_LOCATION, SERVICE); //对应接口 CxfWsdl cxfs=preventIndulge.getCxfWsdlPort(); //调用对应方法 System.out.println(cxfs.getCurrentEnrollment("10")); }
注:我的cxf实现类的注解如下:
@WebService(endpointInterface = "com.fortunes.hrss.cxf.CxfWsdl" ,targetNamespace="http://cxf.hrss.fortunes.com/",portName="HTTP_Port")
相关文章推荐
- jvascript 窗出窗口插件
- iOS的文件分类、存放路径及文件属性
- Android fragment全面深入解析三
- 事件委托
- linux shell突然显示-bash-4.1#的解决方法
- HDU5032 -- Always Cook Mushroom 树状数组 14年北京网络赛
- 什么是客户区/非客户区?
- epoll系列系统调用
- activity中用到多个fragment,资源被回收后,出现未知异常
- java 面试总结
- 常用JS收集
- .
- From MSI to WiX, Part 8 - Major Upgrade, by Alex Shevchuk
- EBS开发技术之Patch安装
- 约瑟夫问题
- SQL Insert into 语句插入后返回新插入的自动增长ID
- ButterKnife--View注入框架
- android获得联系人
- 制度是绝情的,管理是无情的,执行是合情的
- Leetcode: Multiply Strings