У нас есть собственный процессор верблюда, который необходимо вызывать, а также динамически параметризовать из полезной нагрузки входящего запроса xpath, но URI процессора содержит «ЗАПЯТАЯ», поскольку он выполняет внутренний SQL-запрос.
<context id="mycontext">
<from uri="timer://com.arpit.timer?period=1000&delay=1000&repeatCount=5&fixedRate=false&daemon=false"/>
<setBody>
<simple> "here goes sample XML payload "</simple>
</setBody>
<setheader headerName="val1">
<xpath resultType="java.lang.String"> "here goes my xpath" </xpath>
</setheader>
<!-- Now I call my custom processor with URI containing comma -->
<recipientList delimiter="%">
<simple>Select col1, col2, col3 from tablex where id = '${header.val1}'</simple>
</recipientList>
</context>
Теперь сценарий работает только тогда, когда мы указываем delimiter="%", в противном случае происходит сбой с ошибкой о невозможности найти конечную точку col2.
Есть ли способ подавить разделитель в СПИСОК ПОЛУЧАТЕЛЕЙ?
С уважением, Арпит.
org.apache.camel.processor.RecipientList
и следующая строка кода в классе делает вид, что действительно не может быть этого подавления?public boolean sendToRecipientList(Exchange exchange, Object recipientList, AsyncCallback callback) { Iterator<Object> iter = ObjectHelper.createIterator(recipientList, delimiter); .......}
Кто-нибудь может подтвердить правильность моего понимания? - person Robin   schedule 24.08.2013