2016-05-10 4 views
0

Проблема проста, но реализация кажется неуловимой. Я хочу отправить только несколько установочных POST на сервер REST, а затем начать опрос каждые 5 секунд с помощью GET сразу после того, как POST были успешными. Какая реализация для этого выглядит в Camel Spring XML с использованием компонента Camel CXFRS? Я не хочу писать новый код или конечную точку верблюда и хотел бы сделать это с помощью существующих инструментов верблюда.Camel CXF REST: Настройка затем опрос

ответ

1

Вы можете попробовать что-то вроде ниже. Подробные сведения о компонентах верблюжьих см Apache camel documentation

<camelContext xmlns="http://camel.apache.org/schema/spring" 
    <route id="abc" shutdownRoute="Default" streamCache="true"> 
      <from uri="timer://foo?fixedRate=true&amp;period=100000" /> 
      <setHeader headerName="CamelHttpMethod"> 
       <constant>POST</constant> 
      </setHeader> 
      --setheader for Content-Type 
      <recipientList> 
       <simple>https4://post url</simple> 
      </recipientList> 
      <log message="After Transmission " loggingLevel="DEBUG" 
       logName="com.domain" /> 
      <recipientList> 
       <simple>https4://get url</simple> 
      </recipientList> 
      --unmarshall 
</route> 
</camelContext> 
+0

Благодаря @RamPrakash! Хотя это не послужило бы причиной того, что служба всегда делала сообщение, а потом получала? – Thirlan

+0

Извините, позвольте мне уточнить мой комментарий, не будет ли ваш код заставлять его делать сообщение и получать каждые 100 000 мс? Я искал, чтобы он мог сделать 2-3 POST, а затем потом ПОЛУЧИТЬ каждые 100000 мс. – Thirlan

+0

@ Тирлан да. Мой плохой, Похоже, я не совсем правильно понял ваше требование. Опять же, вы можете использовать задержку между POST и GET, см. Эту документацию для получения дополнительной информации http://camel.apache.org/delayer.html ИЛИ вы могли бы написать несколько потоков для POST'S и GET'S (время) для их правильного расписания для достижения твое задание. – RamPrakash