2016-02-15 7 views
0

У меня есть маршруты верблюдов, которые совершают вызовы отдыха на основе значений заголовков. я использовал XPath для чтения значений из XML и установить их в качестве заголовка и использовать XPath в блоке, как так:верблюд: когда значение заголовка с использованием чертежа

<camel:setHeader headerName="clear"> 
    <xpath>/TicketInfo/TicketData/Clear/text()</xpath> 
</camel:setHeader> 
    <camel:choice> 
     <camel:when> 
      <camel:xpath>$clear='CLEARED'</camel:xpath> 
      <camel:doTry> 
       ... 

, но теперь я вынужден использовать JSON так XPath не будет работать. Теперь у меня есть:

<camel:setHeader headerName="clear"> 
    <camel:jsonpath>$.ticket.Type</camel:jsonpath> 
</camel:setHeader> 
    <camel:choice> 
     <camel:when> 
     <camel:xpath>$clear='CLEARED'</camel:xpath> 
     <camel:doTry> 
      ... 

, но, очевидно, <camel:xpath>$clear='CLEARED'</camel:xpath> часть больше не будет работать. Есть ли другой способ проверить значение $ clear заголовка для ограничения, когда <camel:doTry> и после выполнения?

ответ

1

Попробуйте simple язык:

<camel:when> 
    <camel:simple>${in.header.clear} == 'CLEARED'</camel:simple> 
    <camel:doTry> 

См this documentation

+0

Ха-ха, я понял, что должен быть «простой» способ сделать эту работу :) спасибо! –

 Смежные вопросы

  • Нет связанных вопросов^_^