第一步:因为https协议的因素,需要先将证书导入jdk中;
1.通过IE浏览器直接访问https的服务接口服务地址
如:https://notepat/nc_ws/services/NcServices?wsdl
在地址右侧会出现【证书错误】,然后点击,安装证书;
2.导出证书
在IE浏览器右上方工具栏中依次打开【工具】->【Internet选项】->【内容】->【证书】,找到自己的证书,然后导出;
3.jdk导入证书
将证书放入%JAVA_HOME%/jre/lib/security目录中;
通过管理员身份运行命令窗口,导入证书
keytool -import -alias 证书别名 -file 证书名称 -keystore cacerts -trustcacerts
如果提示已存在,则先将证书删除,之后再重新导入即可;
keytool -delete -alias 证书别名 -keystore cacerts
附加:
查看证书列表keytool -list -keystore cacerts
java秘钥口令默认为 changeit,不需要重新设置秘钥口令;
之后会提示 是否信任该证书:Y:是 N:否,输入 Y 即可;
第二步:查看在浏览器中访问的地址是否与wsdl文件中的<wsdlsoap:address location=""/>中的地址是否一致,如果不一致,则将wsdl文件保存到本地,将<wsdlsoap:address location=""/>的地址修改为一致;
第三步:
如果地址一致,直接通过cxf 命令行工具,直接生成客户端;
wsdl2java -encoding utf-8 -d java类生成目录 http://www.webxml.com.cn/WebServices/IpAddressSearchWebService.asmx?wsdl
如果地址不一致,则访问修改后的本地wsdl文件,直接通过cxf 命令行工具,直接生成客户端;
wsdl2java -encoding utf-8 -d java类生成目录 本地wsdl文件所在地址
秘钥口令:changeit