WSO2 ESB 代理服务调用后端服务端点(WCF)(大 IP)有错误 403/404

WSO2 ESB Proxy service call Backend service endpoint(WCF)(Big IP) have error 403/404

我为后端服务创建了 WSO2 ESB 代理服务。我可以成功调用托管在 DEV 服务器中的 DEV WCF 服务端点,端点是 DEV 服务器名称。
但我使用相同的方式调用测试环境端点,测试端点是一个 Big Ip 端点。 WSO2 似乎无法访问 Big Ip 端点。

来自调试信息。(我的大 ip 端点是 https://hostname/201507/servicename.svc

[2015-07-08 11:48:21,786] DEBUG - headers http-outgoing-3 >> POST /201507/servicename.svc HTTP/1.1
[2015-07-08 11:48:21,786] DEBUG - headers http-outgoing-3 >> Content-Type: application/soap+xml
[2015-07-08 11:48:21,787] DEBUG - headers http-outgoing-3 >> Transfer-Encoding: chunked
[2015-07-08 11:48:21,787] DEBUG - headers http-outgoing-3 >> Host: hostname:80
[2015-07-08 11:48:21,787] DEBUG - headers http-outgoing-3 >> Connection: Keep-Alive
[2015-07-08 11:48:21,787] DEBUG - headers http-outgoing-3 >> User-Agent: Synapse-PT-HttpComponents-NIO

WSO2 似乎无法成功 post SOAP 到正确的端点,端口 (80) 错误。
我也尝试像这样 https://hostname:443/201507/servicename.svc 对端口进行硬编码,但没有同样的错误。
有人知道这是什么原因吗?

编辑:

这可能会导致WSO2默认使用chunked-encoding来调用后端服务。

问题:https 的端口 80。这是 wso2 ESB4.8.1 中的错误 (https://wso2.org/jira/browse/ESBJAVA-3336)

我的问题可能是由于 wso2 默认使用带传输编码的 HTTP 1.1:分块以回调端点。

但是我的测试环境后端servcie不支持chunking Encoding。这会导致错误。

添加

<property name="DISABLE_CHUNKING" value="true" scope="axis2"/>

对于直通代理:
在 ESB 中禁用分块时内容长度不正确。
查看 https://wso2.org/jira/browse/ESBJAVA-3297

中的错误

其他:
它的工作!但如果您的客户端是 SOAP11,则将 ContentType 作为 "text/xml" 发送,而您后端接受 "application/soap+xml"。你需要添加

<property name="messageType" value="application/soap+xml" scope="axis2" type="STRING"/>
<property name="ContentType" value="application/soap+xml" scope="axis2" type="STRING"/>
(default not needed property ContentType)