Table of Contents

Fedora Generic Search Installation

Fedora Generic Search (Fedora GSearch) provides full-text indexing and searching for Fedora. This functionality is not offered by Fedora out-of-the-box, which is why it's a good idea to install Fedora GSearch alongside it.

In this document,

For a walkthrough on installing Fedora (and for links to the official Fedora instructions for installation) see Fedora.

This document describes two ways in which you can install Fedora Generic Search:

See also the final section containing Important Notes.

Using the GSearchInstaller

You will need Java 1.5 or higher, which would also have been required to install Fedora itself.

java -jar GSearchInstaller.jar

This will launch the installer's opening dialog.

(It is recommended that Windows users don't just double-click on the jar file as the application's output will indicate whether and where anything failed during installation. This output is sent to the DOS console which won't be there if you run the jar-file by double-clicking.)

Note: GSearchInstaller can also be run from the command-line, by passing command-line arguments to GSearchInstaller.jar. To find out what the accepted arguments are, run it with the -help flag:

java -jar GSearchInstaller.jar -help

If you're running on Windows, GSearchInstaller will sadly open quite a number of DOS consoles and leave them open. You'll have to manually close each of them (for instance, by typing exit in them).

Manual Installation

$FEDORAHOME/tomcat/webapps/fedoragsearch/WEB-INF/classes/config/index/demoFoxmlToLucene.xslt

At present, Muradora's file allows all digital objects in your Fedora repository to be indexed and searchable. If you're alright with indexing just the Greenstone documents stored in Fedora's repository, then we'll add the following to the above file:

	<xsl:if test="starts-with($PID,'greenstone')">
	...
	</xsl:if>

So that now the file contains:

<xsl:if test="foxml:digitalObject/foxml:objectProperties/foxml:property[@NAME='http://www.w3.org/1999/02/22-rdf-syntax-ns#type' and @VALUE='FedoraObject']">
  <b><xsl:if test="starts-with($PID,'greenstone')"> // ADDED THIS</b>
     <!--    filter out annotations: -->
     <!--
     	<xsl:choose>
       	<xsl:when test="foxml:digitalObject/foxml:datastream/foxml:datastreamVersion[last()]/foxml:xmlContent/rdf:RDF/rdf:Description/rel:isMemberOf[@rdf:resource='info:fedora/mura:annotations']">
        </xsl:when> // CORRECTED typo in this comment
        <xsl:otherwise>
     -->
    <xsl:apply-templates mode="activeDemoFedoraObject"/>
     <!--
        </xsl:otherwise>
        </xsl:choose>
     -->
  <b></xsl:if> // ADDED THIS</b>
</xsl:if>

$FEDORAHOME/tomcat/webapps/fedoragsearch/WEB-INF/classes/config/index/index.properties

we're going to add fulltext (and label) to the list of fields that are indexed and are therefore searchable. We do this by appending

ds.fulltext ds.label

So that it now becomes:

fgsindex.defaultQueryFields = dc.description dc.title dc.creator dc.identifier ds.fulltext ds.label

The field ds.label and a document's full-text can now be searched and will appear in the search results. (Only a customisable snippet-size of a document's full-text will be present in the results of a search.)

Important notes

http://localhost:8080/fedoragsearch/rest

If you visit this page, there are links to doing searches and browsing the Fedora repository's full-text contexts.

gsearch.indexName=your-fedora-index-name

If you had to create the properties file, you'd have to create this property as well. But if the file already existed, then the property gsearch.indexName would have been in there and you need only adjust the index name to make sure it is set to to your own.

Text/xml is not accepted. (Therefore Greenstone documents exported to FedoraMETS and ingested into Fedora must be of one of the above MIME-types, else they will not be indexed by Fedora Generic Search.)

At present, FLI sets the content-type of the Fedora METS documents it exports to being text/xml. Therefore these documents don't yet get indexed by Fedora Generic Search. In order to do that, you need to use Fedora's Admin-Client application to change the content-type for the documents FLI puts into Fedora from text/xml to text/html.