Unfortunately, for custom bridges, the SortableField
annotation is only used to validate queries, it’s ignored when indexing.
You will need to add the docvalues yourself.
Instead of this:
public void set(String name, Object value, Document document, LuceneOptions luceneOptions) {
if (value != null) {
BigDecimal decimalValue = (BigDecimal) value;
Long indexedValue = decimalValue.multiply(storeFactor).longValue();
luceneOptions.addNumericFieldToDocument(name, indexedValue, document);
}
}
… do this:
public void set(String name, Object value, Document document, LuceneOptions luceneOptions) {
if (value != null) {
BigDecimal decimalValue = (BigDecimal) value;
Long indexedValue = decimalValue.multiply(storeFactor).longValue();
luceneOptions.addNumericFieldToDocument(name, indexedValue, document);
luceneOptions.addNumericDocValuesFieldToDocument(name, indexedValue, document);
}
}