2 Stimmen

Wie lautet die Syntax für einen Solr ScriptTranformer, um einen zusätzlichen Wert zu einem mehrwertigen Feld hinzuzufügen?

Ich bin in einer Position, in der ich einen Solr DataImportHandler ScriptTransformer schreiben muss, der einen anfänglichen oder zusätzlichen Wert zu einem mehrwertigen Feld hinzufügen wird.

Derzeit versuche ich, die row.put('fieldname', value) Methode, aber es scheint, dass der letzte hinzugefügte Wert den vorhandenen Wert überschreibt, anstatt einen neuen Wert hinzuzufügen.

Welche Methode oder Syntax ist erforderlich, um neue Werte zu einem mehrwertigen Feld über einen ScriptTransformer hinzuzufügen?

2voto

STW Punkte 42452

Ich habe ein Beispiel für den Solr DataImportHandler übersehen ScriptTransformer section.

Es sieht so aus, als müssten Sie den Wert des mehrwertigen Feldes als eine Instanz der java.util.ArrayList Typ.

Hier ist der entsprechende Teil des Beispiels, das ich getestet habe und das hervorragend funktioniert!

var arr = new java.util.ArrayList();
for (var i=0; i<pieces.length; i++) {
  arr.add(pieces[i]);
}
row.put('categorypieces', arr);

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X