2013-03-04 2 views
0

У меня есть прецедент, где я хочу удалить документы solr (по id) с помощью Camel.Solr удалить операцию с помощью Camel

Я искал документацию, но я не получаю дескриптор примеров при операции удаления.

Если мне нужно использовать DELETE_BY_ID, я не понимаю, где установить значение идентификатора документа .. это в теле сообщения или заголовке? Оцените небольшой пример.

Кроме того, есть способ сделать пакетное удаление. Потому что у меня есть несколько документов для удаления из solr.

Спасибо.

+0

только что обновил документы с примером удаления ... см. http://camel.apache.org/solr.html –

ответ

0

для партии удаления, вы можете использовать DELETE_BY_QUERY или использовать List/разветвитель для вызова несколько раз DELETE_BY_ID, а затем совершить в конце концов, и т.д ... что-то вроде этого

template.sendBody("direct:deleteListThenCommit", Arrays.asList("id1", "id2")); 
... 
from("direct:deleteListThenCommit") 
    .split(body()) 
     .setHeader(SolrConstants.OPERATION, constant(SolrConstants.OPERATION_DELETE_BY_ID)) 
     .to(SOLR_ROUTE_URI) 
    .end() 
    .setHeader(SolrConstants.OPERATION, constant(SolrConstants.OPERATION_COMMIT)) 
    .to(SOLR_ROUTE_URI); 
Смежные вопросы