CXF 生成客户端代码
详情参见:
ECLIPSE+CXF http://blog.csdn.net/segen_jaa/article/details/12947305点击打开链接
设置环境变量
set CXF_HOME=D:\apache-cxf-2.3.5 //设置cxf根目录,此步可省
set JAVA_HOME=D:\Java\jdk1.6.0//设置jdk 目录
客户端生成
1、先下载cxf包
http://cxf.apache.org/download.html,现在cxf包。点击打开链接
2、解压缩包,通过cmd命令进入到bin目录下
然后命令生成 :wsdl2java -p 包名 -d 生成文件存放的目录(必须存在) -client http://IP:端
口/XX/XXService?wsdl
-p不指定时会根据名称空间自动生成,所以一般不指定
cxf会自动生成clent示例代码
比较:
JDK生成客户端
wsimport -d /workspace/webservice/ -keep -verbose http://IP:端口/XX/XXService?wsdl
举例:--常用命令(天气)
wsdl2java -p com.xiangyang.weather.service.impl.client
常用命令
-d F:\webservice -client http://webservice.webxml.com.cn/WebServices/WeatherWS.asmx?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.
注意:
-------------------------------------------------------------------------------------------------------
生成的客户端有时候在框架类调用父类的构造函数时会报错
如:
CheckI****Service
public CheckI****ServicePortType getCheckI****ServiceHttpPort(WebServiceFeature... features) {
return super.getPort(CheckI****ServiceHttpPort, CheckI****ServicePortType.class, features);
}
报错的原因为jax-ws2.2规约与java6冲突 故需要降低jax-ws规约版本
解决办法是在生成的命令中加入-frontend jaxws21
加入后命令如下: wsdl2java -frontend jaxws21 -d E:\zkr\project\client\src -client d:/Test.wsdl
通过java调用.net生成的wsdl时,需要将wsdl文件中的<s:element ref="s:schema" ></s:element><s:any ></s:any> 替换为 <s:any minOccurs="2" maxOccurs="2" ></s:any>
1.在浏览器中打开webservice url,保存wsdl文件,如ContentService.xml
2.通过cxf命令“wsdl2java –d E:/file –frontend jaxws21 –client C:\ ContentService.xml”生成客户端代码
3.若报WSDLToJava Error: Thrown by JAXB : undefined simple or complex type 'soap-enc:Array' ,
则需要在生成的文件中找到
<import namespace="http://schemas.xmlsoap.org/soap/encoding/" />,
在浏览器中打开http://schemas.xmlsoap.org/soap/encoding/,
保存文件soap-encoding.xsd,
然后修改成<import namespace="http://schemas.xmlsoap.org/soap/encoding/" schemaLocation="soap-encoding.xsd"/>,
再运行上面的命令即可。
4.如果需要NTLM认证,则需在代码中加入如下的代码:
Java代码 收藏代码
Client client = ClientProxy.getClient(port);
HTTPConduit http = (HTTPConduit) client.getConduit();
HTTPClientPolicy httpClientPolicy = new HTTPClientPolicy();
httpClientPolicy.setConnectionTimeout(36000);
httpClientPolicy.setAllowChunking(false);
http.setClient(httpClientPolicy);
http.getAuthorization().setAuthorizationType("NTLM");
http.getAuthorization().setUserName("xxxx");
http.getAuthorization().setPassword("xxxxx");
------------------------------------------------------------------------------------------------------
简单调用示例:
public static void main(String[] args) {
OpenApupProductService iApupProductService = new OpenApupProductServiceImplService().getOpenApupProductServiceImplPort();
ApupProductAll apa=iApupProductService.getProduct("NET001bba5ba711f3247a78a2693783dfe4fba");
System.out.println(apa.getApupProduct().getValue().getPid().getValue());
}
相关推荐
cxf生成webservice客户端代码
cxf生成客户端 服务端代码
cxf java代码生成 wsdl文件 ,wsdl文件生成 java代码,相关博文: http://blog.csdn.net/dream_broken/article/details/35331949
使用cxf wsdl2java生成webservice客户端命令
使用idea创建maven项目组建spring+cxf 客户端使用idea创建java Enterprise 中的WebServices Client进行创建
使用cxf生成onvif协议的客户端。使用onvif协议提供的wsdl文件生成客户端。
cxf框架的webservice,可以完美运行,生成了xml字符串并进行传递以及生成了json对象,客户端进行请求并解析数据
cxf自动生成webservice...-client 生成客户端代码 -server生成服务端代码 wsdl2java -encoding utf-8 -p com.company.cxf.weather -d E:\IdeaProjects\demo1\src\main\java -all D:\TDDownload\WeatherWS.wsdl
Springboot整合CXF发布Web service和客户端调用(用户和密码验证)打开及用
CXF生成客户端代码所需要的压缩包。直接解压,配置好环境变量即可使用!
主要介绍了Apache CXF如何把wsdl生成java代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
利用wsdl2java工具和SoapUI工具生成webservice的客户端代码 Java实现登陆验证调用 压缩包里包括需要的所有文件,供需要的同学使用 1.apache-cxf-3.3.7 2.SoapUI 5.4.0-EB 3.生成代码的教程 4.获取service调用的...
自己写的代码(CXF生成的webservice客户端添加soapHeader代码),用到的工具和jar包都包含在里面,仅供参考,
1、配置环境变量:新建CXF_HOME D...3、生成客户端:wsdl2java -d C:\Users\ASUS\Desktop\生成的代码存放地址 -encoding utf-8 -p com.jeiao.boss.生成后代码的包名 http://xxx.xxx.xxx.xxx:xxxx/service/接口地址?wsdl
apache-cxf-3.3.3.zip axis2-1.7.9-bin.zip soapui生成客户端工具
NULL 博文链接:https://star45.iteye.com/blog/2019254
apache-cxf-3.4.5
这个代码例子是为了调用CXF提供的WS服务,所以先要下载“CXF和Spring结合的例子”,并将服务器(tomcat)运行起来,在利用本客户端测试,本客户端是根据服务端发布的WSDL文件,用wsdl2java直接生成java代码,加入到...
apache-cxf-2.7.6.zip apache-cxf-3.2.6.zip apache-cxf-3.3.5.zip axis2-1.6.1-bin.zip axis-bin-1_4.zip