如何在使用java api更新elasticsearch中的文档时使用addScriptParam,我刚从版本1.6.0升级到更新的Elasticsearch版本5.2我将在以下代码中获得编译时间
for (n<-0 to followList.size-1) {
var newObject:java.util.Map[String,Object] = Maps.newHashMap();
var follow=followList.get(n)
var followuuid=follow.getFollowID
var uuidType=follow.getClassType().toString()
newObject.put("FollowingItemUuid",followuuid)
newObject.put("FollowingItemUuidType",uuidType)
bulkRequest.add(client.prepareUpdate("testdb", ARTISTUSER_COLLECTION_NAME, artistUser.uuid)
.addScriptParam("newObject", newObject)
.setScript(new Script(script.ScriptType.INLINE,"ctx._source.FollowingItems += newObject",null,null)))
}
eclipse正在给出错误
value addScriptParam is not a member of org.elasticsearch.action.update.UpdateRequestBuilder possible cause: maybe a semicolon is missing before `value
addScriptParam'?
我在网上进行了研究,但没有得到解决方案我知道ES更新的版本在更新API中更改了很多内容,但我没有找到addScriptParam
如何在addScriptParam
中使用ES 5.2
的任何示例java API?
答案 0 :(得分:0)
根据documentation,请使用脚本(脚本)方法。
@Deprecated
public UpdateRequest addScriptParam(java.lang.String name, java.lang.Object value)
Deprecated. Use script(Script) instead
Add a script parameter.