首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >WSO2 ESB代理服务调用后端服务端点(大IP)有错误403/404

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

Stack Overflow用户
提问于 2015-07-08 05:24:57
回答 1查看 905关注 0票数 0

我为后端服务创建WSO2 ESB代理服务。我可以成功地调用我的DEV WCF服务端点,它驻留在DEV服务器中,端点是DEV服务器名。

但是我使用同样的方式调用测试环境端点,测试端点是一个Big端点。WSO2似乎无法访问Big端点。

(我最大的ip端点是https://hostname/201507/servicename.svc)

代码语言:javascript
复制
[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似乎不能成功地将SOAP发送到正确的端点,端口错误(80)。

我也尝试像这个https://hostname:443/201507/servicename.svc那样硬编码端口,但是没有运气相同的错误。

有人知道原因吗?

编辑:

这可能导致默认情况下使用分组编码的WSO2调用后端服务。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-08 11:16:43

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

在wso2默认情况下,我的问题可能导致使用HTTP1.1和传输编码:块调用后端端点。

但是我的测试环境后端服务器不能支持分块编码。这会导致错误。

添加

代码语言:javascript
复制
<property name="DISABLE_CHUNKING" value="true" scope="axis2"/>

为了通过代理:

在ESB中禁用分块时,内容长度不正确。

参见https://wso2.org/jira/browse/ESBJAVA-3297中的bug

其他方面:

起作用了!但是,如果您的客户端是SOAP11,那么ContentType将作为"text/xml“发送,而后端则接受"application/soap+xml”。你需要添加

代码语言:javascript
复制
<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)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31284121

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档