DWR 1.2 Installatiehandleiding Search Enricher Versie 1.2 Datum Status 23 november 2010 Definitief Definitief | DWR 1.2 Installatiehandleiding Search Enricher | 23 november 2010 Inhoud Inhoud.........................................................................................................................2 Inleiding......................................................................................................................3 1.1 Interfacing...................................................................................................... 3 1.2 Configuratie ................................................................................................... 3 2 Installatie ............................................................................................................. 4 2.1 Pre-requisites ................................................................................................. 4 2.2 Applicatie-server deployment ........................................................................ 4 2.3 Standalone deployment .................................................................................. 4 3 Rijksoverheid.nl voorbeeld ................................................................................ 5 3.1 Starten Apache Solr .......................................................................................5 3.2 Starten Search Enricher................................................................................. 5 3.3 Content toevoegen..........................................................................................6 Pagina 2 van 6 Definitief | DWR 1.2 Installatiehandleiding Search Enricher | 23 november 2010 Inleiding De Search Enricher is een op Java 1.5+ gebaseerde server-side service. De installatie ervan kan in principe plaats vinden op ieder platform. 1.1 Interfacing Qua interfacing communiceert de Search Enricher over HTTP via het ACI protocol. De verdere communicatie naar de search engine is afhankelijk van de search engine, maar vindt doorgaans ook plaats via HTTP. 1.2 Configuratie Qua configuratie maakt de Search Enricher gebruik van een enkel configuratiebestand. De locatie hiervan kan opgegeven worden in een XML bestand van Apache Tomcat of als systeem-property aan de Java Virtual Machine. Voor informatie over de invulling van het configuratiebestand kan het TO nageslagen worden. Ook worden er enkele voorbeeld configuraties bij de broncode distributie geleverd. Pagina 3 van 6 Definitief | DWR 1.2 Installatiehandleiding Search Enricher | 23 november 2010 2 Installatie 2.1 Pre-requisites Om de Search Enricher te kunnen compileren, is de volgende software benodigd: - 2.2 Java Software Development Kit (SDK), versie 1.5+ Apache Maven, versie 2.2.0+ Applicatie-server deployment De Search Enricher kan gecompileerd worden naar een WAR file met behulp van het volgende commando: mvn war:war De hieruit resulterende WAR file kan vervolgens worden gedeployed op een applicatieserver. Wel moet de Search Enricher toegang hebben tot het configuratie bestand. Dit moet worden opgegeven worden of: - Met een systeemeigenschap van de applicatieserver. Bijvoorbeeld: -Denricher.settings.file=/usr/local/search-enricher/enricher.properties - Met een Apache Tomcat context file. Deze moet op een van de volgende locaties neergezet worden / beschikbaar zijn: - Windows-based systemen: C:\apache-tomcat\conf\context.xml UNIX-based systemen: /usr/local/apache-tomcat/conf/context.xml Hierin kan dan bijvoorbeeld het volgende staan: <Environment name=”enricher.settings.file” value=”/usr/local/apache-tomcat/conf/context.xml” type=”java.lang.String” /> 2.3 Standalone deployment Naast deployment op een applicatie-server, kan er ook gekozen worden om een lokale applicatieserver te starten. Bijvoorbeeld met behulp van Jetty Runner. Hier zijn dezelfde stappen op van toepassing als in 2.2. Een voorbeeld van een UNIX-gebaseerd start-script is te vinden in support/enricher.sh. Dit script gaat uit van een configuratiebestandslocatie gedefinieerd in een context XML bestand. Pagina 4 van 6 Definitief | DWR 1.2 Installatiehandleiding Search Enricher | 23 november 2010 3 Rijksoverheid.nl voorbeeld Om een idee te krijgen van de mogelijkheden die de Search Enricher biedt, zijn er enkele voorbeeld bestanden meegeleverd met de broncode distributie. In dit voorbeeld zullen we de homepage van rijksoverheid.nl toevoegen aan een lege Apache Solr index. We gaan hierbij uit van een UNIX-based installatie, waarbij de Search Enricher data-folder in /usr/local/search-enricher staat. 3.1 Starten Apache Solr 1) Download de nieuwste release van Apache Solr. Op het moment van schrijven is dit versie 1.4.1. Deze kan uitgepakt worden naar een willekeurige folder. 2) Creëer vervolgens een nieuwe Solr core genaamd ‘rijksoverheid’: apache-solr-1.4.1$ cd example example$ mkdir rijksoverheid example$ mv * rijksoverheid/ example$ echo -en '<?xml version="1.0" encoding="UTF-8" ?>\n\n<solr persistent="false">\n\t<cores adminPath="/admin/cores" defaultCoreName="rijksoverheid">\n\t\t<core name="rijksoverheid" instanceDir="rijksoverheid" />\n\t</cores>\n</solr>\n' > solr.xml 3) Kopieer de meegeleverde support/examples/rijksoverheid-schema.xml naar example/solr/rijksoverheid/conf/schema.xml. 4) En start Solr dan op: example$ java –Xmx256m start.jar 3.2 Starten Search Enricher De snelste manier om de Search Enricher te starten is via de built-in Jetty goal van Maven2. Wel moet de Search Enricher weten waar het enricher.properties bestand gevonden kan worden. Er kan bijv. gestart worden door de locatie via een system property aan de MAVEN_OPTS toe te voegen: search-enricher-1.0.2$ MAVEN_OPTS=”-Xmx256m – Denricher.settings.file=support/configurations/examples/enricher.properti es” mvn jetty:run Mogelijk kan er een dependency-error optreden, wat betekent dat een van de benodigde dependencies nog niet is toegevoegd aan de lokale Maven repository. In dit geval kan in de support/dependencies folder het addDependencies.sh script uitgevoerd worden: search-enricher-1.0.2$ cd support/dependencies dependencies$ ./addDependencies.sh Standaard is de Search Enricher bereikbaar op poort 7007. De actieve configuratie kan ingezien worden op de volgende pagina: Pagina 5 van 6 Definitief | DWR 1.2 Installatiehandleiding Search Enricher | 23 november 2010 http://localhost:7007/settings.html 3.3 Content toevoegen Tot slot kan de content toegevoegd worden middels het ACI protocol. Java applicaties welke de Search Enricher benaderen kunnen dit doen met bijv. Apache HttpClient, maar voor dit voorbeeld POST-en we de envelop vanaf de commandline met cURL: search-enricher-1.0.2$ curl -d "action=ImportEnvelope" -d "JobName=Rijksoverheid" --data-urlencode "EnvelopeXML@support/examples/rijksoverheid-envelope.xml" http://localhost:7007/ Nu dat de content toegevoegd is moet dit nog worden gecommit: search-enricher-1.0.2$ curl -d "action=Commit" -d "JobName=Rijksoverheid" http://localhost:7007/ De content kan vervolgens bij Solr opgevraagd worden op de volgende URL: http://localhost:8983/solr/rijksoverheid/select/?q=*:*&indent=on Pagina 6 van 6