WSO2 ESB 中 REST 请求的计划任务

Scheduled tasks for REST request in WSO2 ESB

我想在 WSO2 ESB 中安排任务,以便使用 restful 网络服务并从这些网络服务中每 N 秒获得一些响应。 在WSO2 ESB的任务配置页面配置SOAP服务很简单,那么REST服务呢?例如,如果我想向此 Web 服务询问一些信息 http://maps.googleapis.com/maps,我该如何配置工作任务?

从任务中,您可以通过序列或代理服务将消息注入 RESTful 端点。有关如何执行此操作的更多详细信息,请参阅 [1] 的 Injecting messages to RESTful Endpoints 部分。

[1] https://docs.wso2.com/display/ESB481/Adding+and+Scheduling+Tasks

首先,您需要定义一个序列来调用 REST 端点并将其与计划任务一起注入。尝试以下示例:

<sequence xmlns="http://ws.apache.org/ns/synapse" name="callAPI">
   <call>
      <endpoint>
         <http method="GET" uri-template="http://testAPI/test"/>
      </endpoint>
   </call>
</sequence>


<task xmlns="http://ws.apache.org/ns/synapse"
      name="testTask"
      class="org.apache.synapse.startup.tasks.MessageInjector"
      group="synapse.simple.quartz">
   <trigger interval="5"/>
   <property xmlns:task="http://www.wso2.org/products/wso2commons/tasks"
             name="sequenceName"
             value="callAPI"/>
   <property xmlns:task="http://www.wso2.org/products/wso2commons/tasks"
             name="injectTo"
             value="sequence"/>
   <property xmlns:task="http://www.wso2.org/products/wso2commons/tasks" name="message">
      <test xmlns=""/>
   </property>
</task>