关于 Conditional Router Mediator
1. WSO2官方文档中的没有对condition中的match, equal, type等做说明,只是从其唯一的Sample中可以看出condition是支持与或非等逻辑的。但sample中的type仅仅用到了header, url, param这三个。那么能不能用property呢?我发现是可以的,比如可以像下面这样定义
<condition>
<and>
<equal type="property" source="property1" value="value1"/>
<equal type="property" source="property2" value="value2"/>
</and>
</condition>
2. 使用Conditional Router Mediator时,分支必须是sequence,这时如果sequence里是send到一个endpoint,而且我们希望获得sequence里endpoint的返回信息,就不行了,会报如下错误。而用Switch就没有这个问题。所以Conditional Router Mediator适合不需要获得下游系统返回信息的情况,比如做异步接口将message放入MQ中,而如果是同步接口且希望获得反馈,则应该使用Switch.
WARN - PassThroughHttpSender Trying to submit a response to an already closed connection : http-incoming-6