我想创建一个远程 Web 服务的代理,该服务仅通过 HTTPS 公开其 WSDL。我有证书的详细信息,在使用 SOAP UI 时我得到了肯定的响应。但是我不想为 keystore 和 trustore 设置 JVM -D 参数并且需要 Mule SOAP 服务器代理来定义它们。下面是我用于不安全访问远程服务的片段。
<flow name="remoteProxy" doc:name="remoteProxy">
<http:inbound-endpoint address="http"
doc:name="HTTP" />
<cxf:proxy-service payload="envelope"
wsdlLocation="http://remoteserver.com/service/service26?wsdl" service="ServiceName"
namespace="http://remoteserver.com/provider/service/2012/" port="Port"
doc:name="SOAP">
</cxf:proxy-service>
<https:outbound-endpoint address="http://remoteserver.com/service/service26"
method="POST" doc:name="HTTPTo26"
exchange-pattern="request-response"/>
<cxf:proxy-client payload="envelope" doc:name="SOAP" />
</flow>
出于合规原因,我没有为 WSDL 和端点添加任何具体细节。在上面的 cxf:proxy-service wsdlLocation 将是 HTTPS 而不是 HTTP。
最佳答案
直接在您的 HTTPS 连接器配置上配置 TLS 参数。
关于web-services - 如何为仅通过 Mule ESB 的 HTTPS 公开的远程 WSDL 指定 SSL 证书详细信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19304228/