我正在尝试为我们公司网络外部的受 SSL 保护的 Web 服务(在 Microsoft Biztalk 上)生成客户端(也称为消费者)所需的 java 帮助类。我们只能通过代理访问它,我们无法更改 Web 服务本身的任何内容。
这是我提供给 wsimport 工具的命令:
wsimport -keep -httpproxy:theProxy.net:8080 -s c:\generatedWebService_wsImport\ -p the.java.package.I.want.to.call.it -Xauthfile c:\generatedWebService_wsImport\auth https://meldeservice-test.oekb.at/Meldeservice/WebService_at_oekb_biztalk_MeldeService.asmx?WSDL
这是我的授权文件的内容:
https://user:pwd@meldeservice-test.oekb.at:8080/Meldeservice/WebService_at_oekb_biztalk_MeldeService.asmx?WSDL
这是我得到的错误:
[ERROR] Server returned HTTP response code: 401 for URL: https: //meldeservice-test.oekb.at/Meldeservice/WebService_at_oekb_biztalk_MeldeService.asmx?WSDL, "https: //meldeservice-test.oekb.at/Meldeservice/WebService_at_oekb_biztalk_MeldeService.asmx?WSDL" needs authorization, please provide authorization file with read access at C:\Documents and Settings\s6424.metro\auth or use -Xauthfile to give the authorization file and on each line provide authorization information using this format : http[s]://user:password@host:port//
当然,代理和凭据与本文中的有所不同。密码包含一个特殊字符! (感叹号)。
有人可以帮我举一个类似条件下的工作示例吗?我已经搜索了很多,但找不到任何对我有帮助的东西。
是否有 wsimport 工具的可下载源代码?这将作为最后的手段使用。
最佳答案
使用您的浏览器并保存到本地文件夹。稍后您可以像这样使用 wsimport:
wsimport -keep -s c:\generatedWebService_wsImport\-p the.java.package.I.want.to.call.it/home/user/Download/example?WSDL
问候,
关于java - wsimport Xauthfile 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7359877/