簡體   English   中英

帶基本身份驗證的wsdl2java(Axis 1.6.1)

[英]wsdl2java with Basic Authentication (Axis 1.6.1)

我正在使用wsdl2java為Web服務生成我的java存根代碼。

我知道自1.4以來一直是一個錯誤,無法訪問需要HTTP基本身份驗證的wsdl源。 您將收到401錯誤,因為授權被拒絕且無法指定憑據。

有誰知道這個問題是否已經解決或有人為此解決? 我可能會設置一個代理服務器,但這對我來說太麻煩了,我正在尋求簡單的東西:)

你可以試試這個

...
serviceStub = new TestBeanServiceStub("<WEB SERVICE URL>"); // Set your value
HttpTransportProperties.Authenticator basicAuthenticator = new HttpTransportProperties.Authenticator();
List<String> authSchemes = new ArrayList<String>();
authSchemes.add(Authenticator.BASIC);
basicAuthenticator.setAuthSchemes(authSchemes); 
basicAuthenticator.setUsername("<UserName>"); // Set your value
basicAuthenticator.setPassword("<Password>"); // Set your value
basicAuthenticator.setPreemptiveAuthentication(true);
serviceStub._getServiceClient().getOptions().setProperty(org.apache.axis2.transport.http.HTTPConstants.AUTHENTICATE, basicAuthenticator);
serviceStub._getServiceClient().getOptions().setProperty(org.apache.axis2.transport.http.HTTPConstants.CHUNKED, "false");
...

作為一種解決方法,我手動下載了wsdl文件(使用我的瀏覽器)並將其與我的代碼一起保存,並將wsdl2java指向我的本地副本。

您可以在URL中傳遞用戶名和密碼,如下所示: http:// username:password@example.com/wsdl它適用於我的軸:1.7.9

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM