关于wsimport 生成的客户端,远程调用的各种问题
如何使用wsimport呢
代码如下 :
wsimport -keep -d D:\Workspaces\src -s D:\Workspaces\src -p com.ws.client -verbose http://172.20.221.248:7003/PeopleSoft/OPM/Service/ProxyService/ZWAUnivseralServiceProxyService?wsdl
提示如下错误:
[ERROR] Server returned HTTP response code: 401 for URL: http://172.20.221.248:7003/PeopleSoft/OPM/Service/ProxyService/ZWAUnivseralServiceProxyService?wsdl,
"http://172.20.221.248:7003/PeopleSoft/OPM/Service/ProxyService/ZWAUnivseralServiceProxyService?wsdl" 需要授权,
请在C:\Users\Administrator\.metro\auth中提供具有读取访问权限的授权文件,
或者使用 -Xauthfile 指定授权文件并在每一行上使用以下格式提供授权信息: http[s]://user:password@host:port//<url-path>
这里提示需要authfile, 由于这个 wsdl 需要 Basic 认证,具体做法是
1、创建 authfile.txt 内容如下:
http://username:password@172.20.221.248:7003/PeopleSoft/OPM/Service/ProxyService/ZWAUnivseralServiceProxyService?wsdl
authfile.txt 可以放到默认路径:C:\Users\Administrator.metro\auth
也可以放到其他任何路径,在执行的时候指定,具体如下
再次执行wsimport:
wsimport -keep -d D:\Workspaces\src -s D:\Workspaces\src -p com.ws.client -Xauthfile D:\Workspaces\authfile.txt -verbose http://172.20.221.248:7003/PeopleSoft/OPM/Service/ProxyService/ZWAUnivseralServiceProxyService?wsdl
成功的信息如下:
正在解析 WSDL...
[WARNING] unknown extensibility element or attribute "partnerLinkType" (in namespace "http://schemas.xmlsoap.org/ws/2003/05/partner-link/")
http://172.20.221.248:7003/PeopleSoft/OPM/Service/ProxyService/ZWAUnivseralServiceProxyService?wsdl的第 3 行
[WARNING] unknown extensibility element or attribute "UsagePolicy" (in namespace "http://schemas.xmlsoap.org/ws/2002/12/policy")
http://172.20.221.248:7003/PeopleSoft/OPM/Service/ProxyService/ZWAUnivseralServiceProxyService?wsdl的第 8 行
[WARNING] unknown extensibility element or attribute "Policy" (in namespace "http://schemas.xmlsoap.org/ws/2002/12/policy")
http://172.20.221.248:7003/PeopleSoft/OPM/Service/ProxyService/ZWAUnivseralServiceProxyService?wsdl的第 32 行
正在生成代码...
com\ws\client\ObjectFactory.java
com\ws\client\ZWAEMPLRQST.java
com\ws\client\ZWAEMPLRSPS.java
com\ws\client\ZWAUNIVSERALSERVICEBindingQSService.java
com\ws\client\ZWAUNIVSERALSERVICEPortType.java
com\ws\client\package-info.java
正在编译代码...
javac -d D:\Workspaces\src -classpath C:\Program Files\