我最近升级WSO2 ESB
到了 4.7 版,Windows Server 2008 R2
并且在简单地将 SOAP 请求代理到端点时遇到了下一个错误:
在处理程序处于不一致状态时接收响应REQUEST_HEAD
ERROR_CODE : 102511
ERROR_MESSAGE : Error in Sender
ERROR_DETAIL : Error in Sender
ERROR_EXCEPTION : null
问题是,文档中没有描述这个错误代码,而且毫无例外地,它是由什么构成的并不明显。我能找到的最接近的代码是 SND_INVALID_STATE = 102510 并且从源代码来看,该请求似乎带有无效的标头。但并非所有请求都失败了。同一个请求可以随机通过或失败。我已经用 fiddler 记录了所有请求并重播了它们。失败的最终可以通过,反之亦然。在此之前,我已经在本地机器(Windows 7)上部署并测试了新版本的 ESB,并且仅在冷启动时遇到了此类错误。
重现它的最简单配置包括 Path Through Proxy 服务和地址端点。
代理服务配置:
<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse" name="TestEP" transports="http" statistics="disable" trace="enable" startOnLoad="true">
<target endpoint="TestEP">
<outSequence>
<send/>
</outSequence>
</target>
<description/>
</proxy>
地址端点描述
<endpoint xmlns="http://ws.apache.org/ns/synapse" name="TestEP">
<address uri="http://mydomain.test/SystemServices.asmx">
<syn:suspendOnFailure>
<syn:initialDuration>0</syn:initialDuration>
<syn:progressionFactor>1.0</syn:progressionFactor>
<syn:maximumDuration>0</syn:maximumDuration>
</syn:suspendOnFailure>
</address>
</endpoint>
有没有其他人遇到过这个错误或知道如何处理它?我将不胜感激任何有关情况的见解。
更新:
请求失败的原因似乎是
Expect: 100-continue
请求 HTTP 标头中的选项。当我在提琴手中创建一个规则来删除它时,所有的查询都成功了。目前尚不清楚是否有办法处理这种行为,WSO2 ESB
或者是否应该删除标题的这一部分。