Class IdentifierResolver

All Implemented Interfaces:
Servlet, ServletConfig, Serializable

public class IdentifierResolver extends HttpServlet
This Servlet maps a given lucene field value to a url and then either redirects there or forwards there, depending on the config.
See Also:
  • Constructor Details

    • IdentifierResolver

      public IdentifierResolver()
  • Method Details

    • doGet

      protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException

      For a given lucene field name parameter, this method either forwards or redirects to the target URL. The target URL is generated by inserting the target lucene field into the target work url, if a document could be identified by the source field. Otherwise, a document is searched for using the page field; if a document is found in this alternative way, target field and page field of the document are inserted into the target page url. NOTE: If you forward, the target URL must be on the same server and must be below the context root of this servlet, e.g. this servlet can not forward to a target above '/'. A redirect changes the URL displayed in the browser, a forward does not.

      Overrides:
      doGet in class HttpServlet
      Throws:
      ServletException
      IOException
    • constructUrl

      public static String constructUrl(org.apache.solr.common.SolrDocument targetDoc, boolean pageResolverUrl)
      constructUrl.
      Parameters:
      targetDoc - a SolrDocument object
      pageResolverUrl - a boolean
      Returns:
      Generated URL
    • constructUrl

      public static String constructUrl(MetadataContainer targetDoc, boolean pageResolverUrl)