如何使用Apache骆驼从Elasticseach中获取所有条目?

时间:2019-07-08 15:17:45

标签: java elasticsearch apache-camel osgi apache-karaf

让我们假设我有如下的elasticsearch实例:    

 from("direct:index")
    .to("elasticsearch://local?operation=INDEX&indexName=twitter&
indexType=tweet");
,我添加了10条推文,我怎么能从elasticsearch获得所有这些推文列表?我尝试过这样的事情:

from("elasticsearch://local?operation=MULTIGET&indexName=twitter&    indexType=tweet").process(new MyProcessor())
   .to("direct:somewhere")  
,但它不起作用,您能帮我做到这一点吗?以及它将在处理器中存储什么类型的数据?

我需要使用apache camel DSL获取所有推文的列表,您能帮我吗?

1 个答案:

答案 0 :(得分:0)

只是猜测,但是Camel Elastic页上说MULTIGET

  

检索在MultigetRequest中指定的指定索引类型,并在正文中返回MultigetResponse对象

所以我想您必须在邮件正文中提供一个MultigetRequest对象,然后在Elastic中执行搜索。

这意味着您不能直接将其用作from(...)的使用者,而必须使用.to(...)进行调用,并确保邮件中包含正确的正文。