diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/searchindex/indexing/IndexingUriFinderListBasic.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/searchindex/indexing/IndexingUriFinderListBasic.java index c45567122..f29e60651 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/searchindex/indexing/IndexingUriFinderListBasic.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/searchindex/indexing/IndexingUriFinderListBasic.java @@ -9,12 +9,18 @@ import java.util.HashSet; import java.util.List; import java.util.Set; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + import com.hp.hpl.jena.rdf.model.Statement; /** * The basic implementation. */ public class IndexingUriFinderListBasic implements IndexingUriFinderList { + private static final Log log = LogFactory + .getLog(IndexingUriFinderListBasic.class); + private final List finders; public IndexingUriFinderListBasic( @@ -40,7 +46,14 @@ public class IndexingUriFinderListBasic implements IndexingUriFinderList { public Set findAdditionalUris(Statement stmt) { Set uris = new HashSet<>(); for (IndexingUriFinder uriFinder : finders) { - uris.addAll(uriFinder.findAdditionalURIsToIndex(stmt)); + List additions = uriFinder.findAdditionalURIsToIndex(stmt); + for (String addition : additions) { + if (addition == null) { + log.warn("Finder " + uriFinder + " returned a null URI."); + } else { + uris.add(addition); + } + } } return uris; } diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/searchindex/tasks/UpdateUrisTask.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/searchindex/tasks/UpdateUrisTask.java index 3deb8c6ee..9afa10249 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/searchindex/tasks/UpdateUrisTask.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/searchindex/tasks/UpdateUrisTask.java @@ -83,6 +83,8 @@ public class UpdateUrisTask implements Task { if (isInterrupted()) { log.info("Interrupted: " + status.getSearchIndexerStatus()); break; + } else if (uri == null) { + // Nothing to do } else { Individual ind = getIndividual(uri); if (ind == null) {