@Override public boolean setFieldsInternal( LengthSolrInputDocument solrDocument, EntityReference entityReference) throws Exception { BaseObjectReference objectReference = new BaseObjectReference(entityReference); DocumentReference classReference = objectReference.getXClassReference(); DocumentReference documentReference = new DocumentReference(objectReference.getParent()); XWikiDocument document = getDocument(documentReference); BaseObject object = document.getXObject(objectReference); if (object == null) { return false; } solrDocument.setField(FieldUtils.ID, resolver.getId(object.getReference())); setDocumentFields(documentReference, solrDocument); solrDocument.setField(FieldUtils.TYPE, objectReference.getType().name()); solrDocument.setField(FieldUtils.CLASS, localSerializer.serialize(classReference)); solrDocument.setField(FieldUtils.NUMBER, objectReference.getObjectNumber()); setLocaleAndContentFields(documentReference, solrDocument, object); return true; }