我处在一个需要编写Solr DataImportHandler ScriptTransformer的位置,它会在多值字段中添加初始值或附加值。
目前我正在尝试使用row.put('fieldname', value)
方法,但似乎最后添加的值会覆盖现有值,而不是附加新值。
通过ScriptTransformer将新值添加到多值字段需要什么方法或语法?
答案 0 :(得分:2)
我忽略了Solr DataImportHandler ScriptTransformer部分的示例。
看起来您需要将多值字段的值视为java.util.ArrayList
类型的实例。
这是hte示例的相关部分,我已经测试并且效果很好!
var arr = new java.util.ArrayList();
for (var i=0; i<pieces.length; i++) {
arr.add(pieces[i]);
}
row.put('categorypieces', arr);