Elasticsearch - 使用java api获取源字段数据

J.D*_*one 5 elasticsearch jest

我正在使用jest弹性搜索(作为java客户端).我需要一些嵌套文档中的字段,因为无法将嵌套字段作为对,我需要'_source'来获取它们.

以下是在ES查询[ Link ]中获取它们的问题,并且效果很好.

但是无法将其查询转换为jest代码.以下是我的尝试.

SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder().query( 
            query
        )
        .fields(      // need _source but no method.
          "oid", 
          "_source.events.activityoid", 
          "_source.events.worktime");
Run Code Online (Sandbox Code Playgroud)

Val*_*Val 7

尝试使用fetchSource()这样:

SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder()
    .query(query)
    .fetchSource(new String[] {
      "oid", 
      "events.activityoid", 
      "events.worktime"
    }, null);
Run Code Online (Sandbox Code Playgroud)