微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

根据命令行生成cxf客户端

根据命令行生成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") 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐