1

使用 REST API 更新文档时如何在 DocumentProcessor 中的现有文档中添加新字段。

@Override
        public Progress process(Processing processing) {
            for (DocumentOperation op : processing.getDocumentOperations()) {
                if (op instanceof DocumentUpdate) {
                    DocumentUpdate documentUpdate = (DocumentUpdate) op;
                    // what shoud I write here to add new field with value 

                }

            }
            return Progress.DONE;
        }

当我使用下面的代码时,这给了我错误

DocumentUpdate upd = new DocumentUpdate(type, id);
             upd.addFieldUpdate(FieldUpdate.createMap(type.getField("myStrWSet"), "foo", new AssignValueUpdate(100)));

错误:AssignValueUpdate 不能应用于 int。

并且,如何使用新字段及其值创建 FieldUpdate 对象。

请帮忙。

4

1 回答 1

3
documentUpdate.addFieldUpdate(FieldUpdate.createAssign(documentUpdate.getDocumentType().getField("myField"),
                                                       new StringFieldValue("myValue")));
于 2018-11-23T11:40:29.877 回答