我想在WSO2 ESB中安排任务,以便使用宁静的Web服务,并从这些Web服务中每N秒获取一些响应。 在WSO2的任务配置页面中,ESB配置SOAP服务很简单,但REST服务呢?例如,如果我想向此Web服务http://maps.googleapis.com/maps询问一些信息,我该如何配置工作任务?
答案 0 :(得分:1)
从任务中,您可以通过序列或代理服务将消息注入RESTful端点。有关如何执行此操作的详细信息,请参阅[1]的Injecting messages to RESTful Endpoints
部分。
[1] https://docs.wso2.com/display/ESB481/Adding+and+Scheduling+Tasks
答案 1 :(得分:1)
首先,您需要定义一个序列来调用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>