簡體   English   中英

如何使用wsdl2java從WSDL生成使用x.509證書保護的代碼?

[英]How to use wsdl2java to generate code from WSDL which is secured using x.509 certificate?

我嘗試使用wsdl2java生成Java類。

Wsdl位於使用X509證書保護的遠程服務器中,當我嘗試在瀏覽器中訪問它而沒有信任存儲中的證書時,它返回錯誤(當然,當我將證書導入certmgr.msc ,wsdl表現得很好)。

不幸的是,當我嘗試運行wsdl2java時,我得到:

> org.apache.cxf.wsdl11.WSDLRuntimeException: Fail to create wsdl definition file:/resources/wsdl/my.xml: WSDLException (at /wsdl:definitions/wsdl:types/xsd:schema): faultCode=PARSER_ERROR: Problem parsing 'https://SERVER_HOST/my?xsd=../xsd/XX.xsd'.: javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure

我在JKS商店導入了我的證書。

我如何建議wsdl2java使用JKS的證書連接到serwer?

我建議您通過以下步驟跳過此問題:

  1. 將wsdl手動下載到本地計算機。

  2. 將在該wsdl文件中引用的xsd文件dlown加載到本地計算機。

  3. 修改wsdl以將xsd位置更改為本地位置。

  4. 你現在可以生成java代碼了。

如果你真的想成功的話。 請參考這里:

"%JAVA_HOME%\bin\java" -Djavax.net.ssl.trustStore="{keystorefile}" -Djavax.net.ssl.trustStorePassword="{password}" -Djavax.net.ssl.keyStoreType="jks" -Dorg.jboss.security.ignoreHttpsHost="true" -Xmx128M -Djava.endorsed.dirs="%CXF_HOME%\lib\endorsed" -cp "%CXF_JAR%;%TOOLS_JAR%;%CLASSPATH%" -Djava.util.logging.config.file="%CXF_HOME%\etc\logging.properties" org.apache.cxf.tools.wadlto.WADLToJava %*

來自: 如何使用wsdl2java通過https生成客戶端代碼?

暫無
暫無

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

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