0

我正在尝试验证 WSO2 ESB 4.0.3 中代理服务中的 GET 请求参数。我有以下代码逻辑

       <filter source="get-property('To')" regex="^(?=.*inSerialNr=).*$">
        <then>
           <send>
              <endpoint key="conf:/tqs/rma/ds_endpoint.xml" />
           </send>
        </then>
        <else>
           <log level="custom" separator=",">
              <property name="Missing-Input" value="Input validation failed...Missing Input Parameter - inSerialNr" />
           </log>
                <script language="js"><![CDATA[mc.setPayloadXML(<ERROR><DESCRIPTION>Input validation failed...Missing Input Parameter - inSerialNr</DESCRIPTION></ERROR>);]]></script>
           <property name="RESPONSE" value="true" scope="default" type="STRING" />
           <send>
              <endpoint key="conf:/tqs/tqsAnonymous.xml" />
           </send>
           <drop />
        </else>
     </filter>

我希望在缺少参数“inSerialNr”时删除消息处理。它如何找不到作为客户端的“http://www.w3.org/2005/08/addressing/anonymous”端点。

即使我尝试执行 xslt 以将结果作为文本/纯文本并将其发送回,但它仍然找不到发送到匿名端点。由于它找不到终点,它会去外序并在那里执行代码。

get参数的错误处理是如何完成的?

请指教。谢谢阿比吉特

4

1 回答 1

0

请看这里[1]。这显示了如何从顺序中发送响应消息。

[1] http://wso2.org/library/knowledge-base/generating-simple-response-using-wso2-enterprise-service-bus

于 2012-07-26T13:29:15.730 回答