【发布时间】:2017-05-10 20:37:21
【问题描述】:
我正在学习 mulesoft (DataWeave Tutorial) 的教程,它实现了一个调用外部公共 Web 服务 (WSDL) 的 Web 服务使用者。我按照描述设置项目没有问题,但是当我启动服务器时出现以下错误:“原因:java.net.ConnectException:连接被拒绝:连接”。
首先想到的是网络服务不可用。但我在 SoapUI 中对其进行了测试,效果很好。
我想这个错误是因为对 Web 服务的调用没有使用我在 Anypoint Studio 中设置的代理配置。因此,在我的 Web 服务使用者中,我设置了一个 HTTP 请求配置,并在其中添加了一个代理配置。但它也没有奏效。这些是我的步骤:
网络服务消费者
https://i.stack.imgur.com/hN584.png
参考标签
https://i.stack.imgur.com/NIV84.png
HTTP 请求配置
https://i.stack.imgur.com/Ubpwa.png
代理选项卡
https://i.stack.imgur.com/bBYx1.png
代理配置
https://i.stack.imgur.com/JDQdf.png
立即引起注意的一件事是 HTTP 请求配置上的 TLS 错误。只要我选择使用代理,当我转到 TLS/SSL 选项卡时,就会出现此错误,如下图所示,我没有删除 TLS 配置的选项:
TLS/SSL 选项卡
https://i.stack.imgur.com/xFqEW.png
这是我的流程的 XML:
<flow name="dataweave_tutorialFlow">
<http:listener config-ref="HTTP_Listener_Configuration" path="ex1" doc:name="HTTP" metadata:id="b34a6c34-653f-4b68-8aa3-8292e41a20cf"/>
<dw:transform-message doc:name="Transform Message">
<dw:input-payload doc:sample="C:\temp\dw_example1.json"/>
<dw:set-payload><![CDATA[%dw 1.0
%output application/xml
%namespace ns0 http://mulesoft.org/tshirt-service
---
{
ns0#OrderTshirt: {
size: "M" unless payload.buyer.state == "TX" otherwise "XXL",
email: payload.buyer.email,
name: payload.buyer.name,
address1: payload.buyer.address,
address2: null,
city: payload.buyer.city,
stateOrProvince: payload.buyer.state,
postalCode: payload.buyer.postCode,
country: payload.buyer.nationality
}
}]]></dw:set-payload>
</dw:transform-message>
<ws:consumer config-ref="Web_Service_Tshirt" operation="OrderTshirt" doc:name="Web Service Consumer"/>
</flow>
我将 Anypoint Studio 6.2.5 与 Mule ESB Server 3.8.2 一起使用。
我不知道要进行哪些更改才能使这项工作正常进行。希望有人对此有一些好的建议。提前致谢!
【问题讨论】:
-
刚刚注意到我忘记在流之前放置 XML 的一些重要部分,但这些配置在我发布的图像上可用。
-
请用完整配置更新我们的问题...您的代理配置不可见
-
配置在此image 上可见配置如下: 代理配置名称:XXXXX_PROXY_CONFIG 主机:proxywbs.int.XXXXX.com 端口:8080
-
而且我公司的代理配置是正确的,我在其他很多地方都使用过。
标签: web-services mule http-proxy anypoint-studio