HTTPS WSDL soap:web-service-proxy未正确重写地址位置

时间:2013-04-12 10:58:55

标签: web-services proxy mule

这个问题出现在mule 1.3.2-201212121943

WSDL soap:使用.NET WS的Web服务代理未正确重写地址位置

<mule ...>
    <https:connector name="HTTP_HTTPS"  sendBufferSize="0" receiveBufferSize="0" receiveBacklog="0" clientSoTimeout="10000" serverSoTimeout="10000"  doc:name="HTTP\HTTPS">
        <https:tls-client path="xyz\keystore.jks" storePassword="mulepassword"/>
    </https:connector>

    <pattern:web-service-proxy name="xyz-ws-proxy"  >
      <http:inbound-endpoint address="http://localhost:8081"/>
      <https:outbound-endpoint followRedirects="true" address="https://xyz/g2g/BPM#[header:inbound:http.request.path]" connector-ref="HTTP_HTTPS" />
    </pattern:web-service-proxy>
</mule>

http://localhost:8081/xyz.asmx?wsdl使用

返回wsdl
<wsdl:port name="XYZEndpointSoap" binding="tns:XYZEndpointSoap">
  <soap:address location="http://xyz/g2g/BPM/xyz.asmx" />
</wsdl:port>
<wsdl:port name="XYZEndpointSoap12" binding="tns:XYZEndpointSoap12">
  <soap12:address location="http://xyzg2g/BPM/xyz.asmx" />
</wsdl:port>

使用另一个jax-ws服务,此配置有效 - 只有一个soap:地址为嗯。

这是.NET WS。

谢谢

PS:我已阅读谷歌搜索结果并关闭了骡子问题,但这项服务无效。

1 个答案:

答案 0 :(得分:0)

我已经检查过,pattern:web-service-proxy没有问题重写包含soap:addresssoap12:address的WSDL的所有地址。

问题实际上可能是由于您获取WSDL的方式:HTTP入站端点绑定到http://localhost:8081而没有path(我会提倡反对:最好有一个{{ 1}}),WSDL在path处可用,而不是http://localhost:8081/?wsdl