簡體   English   中英

當我嘗試在暴露於 https 的 WSDL 上使用 wsimport 創建文件時出錯

[英]Error when I try to create files using wsimport on a WSDL exposed over https

我正在使用 Apache Geronimo 服務器進行開發。 我需要從暴露在https上的 WSDL 生成代碼。 我使用了以下命令:

wsimport -keep -verbose https://devurl:7443/process-engine/soap/CustomerByNumber_v1?wsdl

但我收到此錯誤:

解析 WSDL...

[錯誤] 收到致命警報:protocol_version

無法讀取 WSDL 文檔:https://devurl:7443/process-engine/soap/CustomerByNumber_v1?wsdl,因為找不到文檔; /2) 文件無法讀取; 3) 文檔的根元素不是 wsdl:definitions。

[錯誤] failed.noservice=在提供的 WSDL(s) 中找不到 wsdl:service:

至少需要提供一個 WSDL 至少一個服務定義。

解析 WSDL 失敗。

當我們點擊 WSDL URL 時,它具有用戶名/密碼身份驗證。

我怎么解決這個問題?

錯誤消息提到了可能的原因:

  1. 找不到文件;
  2. 文件無法讀取;
  3. 文檔的根元素不是<wsdl:definitions>

您提到該服務需要用戶名/密碼身份驗證。 這也是訪問 WSDL 的情況嗎? 所以協議可能不一定是問題。

請執行下列操作:

  • 在瀏覽器中打開 WSDL URL。 您的瀏覽器不會出現 HTTPS 問題。
  • 如果需要訪問 WSDL,請提供用戶名/密碼。
  • 確保打開的文檔是 WSDL 並包含<wsdl:definitions>根元素。
  • 將 WSDL 下載到您的計算機,擴展名為.wsdl。
  • 將此文件與 wsimport 一起使用: wsimport -keep -verbose yourSavedFile.wsdl

暫無
暫無

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

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