From e3db0778cbd4abd2fd7b492a33dce75a05d000ed Mon Sep 17 00:00:00 2001 From: j2blake Date: Mon, 8 Oct 2012 20:20:20 +0000 Subject: [PATCH] NIHVIVO-3940 If no NamespaceMapper is found in the ServletContext, log a warning message and return an empty string, instead of throwing an exception. --- .../IndividualRequestAnalysisContextImpl.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/individual/IndividualRequestAnalysisContextImpl.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/individual/IndividualRequestAnalysisContextImpl.java index cf7a8c8d6..2198c89f5 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/individual/IndividualRequestAnalysisContextImpl.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/individual/IndividualRequestAnalysisContextImpl.java @@ -6,6 +6,9 @@ import java.util.List; import javax.servlet.ServletContext; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + import edu.cornell.mannlib.vitro.webapp.beans.Individual; import edu.cornell.mannlib.vitro.webapp.beans.SelfEditingConfiguration; import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest; @@ -21,6 +24,10 @@ import edu.cornell.mannlib.vitro.webapp.utils.NamespaceMapperFactory; */ public class IndividualRequestAnalysisContextImpl implements IndividualRequestAnalysisContext { + private static final Log log = LogFactory + .getLog(IndividualRequestAnalysisContextImpl.class); + + private final VitroRequest vreq; private final ServletContext ctx; private final WebappDaoFactory wadf; @@ -46,6 +53,12 @@ public class IndividualRequestAnalysisContextImpl implements NamespaceMapper namespaceMapper = NamespaceMapperFactory .getNamespaceMapper(ctx); + if (namespaceMapper == null) { + log.warn("No NamespaceMapper in ServletContext. Request URL was '" + + vreq.getRequestURL() + "'"); + return ""; + } + String ns = namespaceMapper.getNamespaceForPrefix(prefix); return (ns == null) ? "" : ns;