这个问题出现在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: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:我已阅读谷歌搜索结果并关闭了骡子问题,但这项服务无效。
答案 0 :(得分:0)
我已经检查过,pattern:web-service-proxy
没有问题重写包含soap:address
和soap12:address
的WSDL的所有地址。
问题实际上可能是由于您获取WSDL的方式:HTTP入站端点绑定到http://localhost:8081
而没有path
(我会提倡反对:最好有一个{{ 1}}),WSDL在path
处可用,而不是http://localhost:8081/?wsdl
。