2011-09-09 61 views
9

我正在嘗試爲我們公司網絡外部的SSL保護Web服務(在Microsoft Biztalk上)爲客戶端(a.k.a使用者)生成java幫助類。我們只能通過代理訪問它,並且我們不能改變Web服務本身的任何內容。wsimport Xauthfile錯誤

這是提供給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:[email protected]:8080/Meldeservice/WebService_at_oekb_biztalk_MeldeService.asmx?WSDL 

而且這是我得到錯誤:

[錯誤]服務器返回HTTP響應代碼:401網址: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 「 需要授權,請提供授權文件,並在C:\ Documents and Settings \ s6424.metro \ auth上使用 訪問或使用 -Xauthfile授予授權文件,並在每一行上使用此格式提供授權信息: http [ s]:// user:password @ host:port //

當然代理和憑證是不同的,因爲在這篇文章中。密碼包含一個特殊字符! (感嘆號)。

有人可以幫助我在類似條件下的工作示例。我已經搜索了很多,但找不到任何幫助我的東西。

是否有某處可下載的wsimport工具源代碼?這將是最後的使用手段。

回答

1

嘗試打開https://user:[email protected]:8080/Meldeservice/WebService_at_oekb_biztalk_MeldeService.asmx?WSDL

與您的瀏覽器,並保存到本地文件夾。稍後,您可以使用像這樣的wsimport:

wsimport -keep -sc:\ generatedWebService_wsImport \ -p the.java.package.I.want.to.call.it/home/user/Download/example?WSDL

問候,

+0

是否有必要保存WSDL的本地副本?是否沒有有效的方式直接通過wsimport導入客戶端工件? – nanosoft

0
在您的要求

,你在你的權威性文件中使用

https://meldeservice-test.oekb.at/Meldeservice/WebService_at_oekb_biztalk_MeldeService.asmx?WSDL 

,它是

meldeservice-test.oekb.at:8080/Meldeservice/WebService_at_oekb_biztalk_MeldeService.asmx?WSDL 

嘗試刪除端口號,將其更改爲

https://user:[email protected]/Meldeservice/WebService_at_oekb_biztalk_MeldeService.asmx?WSDL