Repository - Installation avancée

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Current »

Navigation dans les fichiers de configuration

Avant de procéder à l'installation avancée, il est conseillé de consulter le document "Navigation dans les fichiers" pour mieux comprendre la structure des différents fichiers.

Pré-requis

JDK

L'entrepôt ORI-OAI est une application Java fonctionnant avec un JDK 1.6 ou supérieur. La variable d'environnement JAVA_HOME doit exister et pointer sur le répertoire d'installation du JDK.

Toutefois, si cette variable pointe sur un autre JDK, les scripts ant.bat (pour Windows) et ant.sh (pour Linux) sont fournis, dans lesquels vous pouvez définir l'emplacement d'une JDK 1.6 utilisée de façon alternative pour le moissonneur.

ANT

Les tâches de compilation, de déploiement et certaines actions utilisent ANT 1.7. La variable d'environnement ANT_HOME doit exister et pointer sur le répertoire d'installation de ANT.

Tomcat

Une version de Tomcat 6 doit être disponible sur la machine de déploiement, et la variable d'environnement CATALINA_HOME doit être définie pour pointer son emplacement.

Pour assurer l'application de fonctionner avec l'encodage UTF-8, il ajouter cette ligne dans le fichier startup.sh ou catalina.sh (répertoire tomcat-xxx/bin) : export CATALINA_OPTS="-Dfile.encoding=UTF-8 $CATALINA_OPTS"

Installation manuelle de l'entrepôt OAI

Installation

Une possibilité de configuration centralisée permet de changer automatiquement la valeur de certains paramètres entre crochets et en majuscules, grâce à la configuration du module quick-install. Les fichiers build.properties et ori-oaicat.properties sont concernés. Ainsi, vous avez le choix entre une installation "par module" où vous devez créer et editer ces fichiers à partir de init-build.properties et conf/properties/ori-oaicat.example.properties, et une installation "centralisée" où ces fichier seront automatiquement générés lors de la compilation et du déploiement. Les sections suivantes décrivent l'installation "par module", pour l'installation centralisée, se reporter en plus à la documentation du quick-install.

L'installation se fait en 5 étapes :

1. décompression de l'archive ori-repository-x-x.zip

2. configuration du fichier build.properties

Un fichier build.properties doit être crée par recopie de init-build.properties.
Il faut indiquer l'endroit ou l'on veut installer l'application, l'emplacement du Tomcat, ainsi que l'emplacement d'un JDK 1.6+. Les paramètres entre crochet sont à modifier, ou seront modifés par la configuration centrale du quick-install :

#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
## 2) Installation manuelle du module
# Dans ce cas, il est nécessaire de commenter
# le paramètre commons.parameters.central.file.url
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#

# Cette partie du fichier doit être mise à jour avant
# la première utilisation de votre application dans votre environnement
#JDK 1.5 directory
java.home=[JAVA_HOME]
#Tomcat directory
tomcat.home=[PATH_TOMCAT_REPOSITORY]
#Deployment directory
deploy.home=[PATH_TOMCAT_REPOSITORY]/webapps
#Nom de ditribution de l'application - distribution name
app.name.deploy=[CONTEXT_REPOSITORY]
#Log Directory (optionnal - default : ${tomcat.home}/logs )
#log.dir=E:/logs
#Log mode : prod or debug
log.mode=prod

Les chemins utilisant des anti-slashes comme sous Windows, doivent s'écrire soit avec un double anti-slash soit avec un slash, comme sous Linux.

3. Configurer les fichiers de propriétés du module

Un fichier properties/ori-oaicat.properties doit être créé à partir de l'exemple ori-oaicat.example.properties, dans lequel les valeurs entre crochet doivent être adaptées :

# ORI-OAI-repository Configuration

AbstractCatalog.millisecondsToLive=3600000
AbstractCatalog.harvestable=true

# datestamp granularity
#AbstractCatalog.granularity=YYYY-MM-DD | YYYY-MM-DDThh:mm:ssZ
# note : in case of reexposition of many repositories with different granularities
# choose YYYY-MM-DD form
AbstractCatalog.granularity=YYYY-MM-DD

# Important note : final OAI identifiers will be as :
# 1. for harvested record : original OAI id of the harvested store
# 2. for local record (provided by workflow module) :
# oai:[SCHEME_IDENTIFIER][REPOSITORY_IDENTIFIER]:[indexing id]
# where indexing id is local id provided by workflow module
# TAKE CARE not to change often these values if you don't want to have
# your records harvested several times with different ids
#(have to read http://www.openarchives.org/OAI/2.0/guidelines-oai-identifier.htm)

ORICatalog.maxListSize=40
ORICatalog.listSets.maxListSize=1000
ORIRecordFactory.repositoryIdentifier=[REPOSITORY_IDENTIFIER]
# note : this scheme will be automatically prefixed with "oai:"
ORIRecordFactory.identifierScheme=[REPOSITORY_SCHEME_IDENTIFIER]

# Custom Identify response values
Identify.repositoryName=[REPOSITORY_NAME]
Identify.adminEmail=[SMTP_ADMINISTRATOR_MAIL]
Identify.earliestDatestamp=2006-12-04T00:00:00Z
Identify.deletedRecord=no
Identify.description.1=<description><oai-identifier xmlns\="http\://www.openarchives.org/OAI/2.0/oai-identifier" xmlns\:xsi\="http\://www.w3.org/2001/XMLSchema-instance" xsi\:schemaLocation\="http\://www.openarchives.org/OAI/2.0/oai-identifier http\://www.openarchives.org/OAI/2.0/oai-identifier.xsd"><scheme>oai</scheme><repositoryIdentifier>oai\:[REPOSITORY_SCHEME_IDENTIFIER][REPOSITORY_IDENTIFIER]</repositoryIdentifier><delimiter>\:</delimiter><sampleIdentifier>oai\:[REPOSITORY_SCHEME_IDENTIFIER][REPOSITORY_IDENTIFIER]\:ORI-00000012</sampleIdentifier></oai-identifier></description>

# xslt files for crosswalk formats
dctolomFile=properties/xslt/lom2dc.xsl

# File System parameters (used ONLY if you choose fileSystem provider in repository-domain.xml)
filesystem.directory=/path/to/records/directory
filesystem.md.namespace=http://www.openarchives.org/OAI/2.0/oai_dc/
filesystem.filter=*.xml

# Web service for ori-oai-indexing (used ONLY if you choose indexer provider in repository-domain.xml)
indexing.ws.wsdlDocumentUrl=http://[HOST_INDEXING]:[PORT_INDEXING]/[CONTEXT_INDEXING]/xfire/IndexingService?WSDL
#indexing.ws.wsdlDocumentUrl=http://demo.ori-oai.org/indexing/xfire/IndexingService?WDSL
indexing.ws.lookupServiceOnStartup=false

# Web service for ori-oai-vocabulary
vocabulary.ws.wsdlDocumentUrl=http://[HOST_VOCABULARY]:[PORT_VOCABULARY]/[CONTEXT_VOCABULARY]/xfire/OriVocabularyService?WSDL
vocabulary.ws.lookupServiceOnStartup=false


# static MD names
static.mdIdentifier=md-ori-oai-id
static.mdFormat=md-ori-oai-namespace
static.mdRepository=md-ori-oai-repository
static.mdDatestamp=md-ori-oai-datestamp

# use to append repository name to oai identifier
# note : must match worklow_name defined in indexing and search modules properties as <workflow_name>ori-oai-workflow</workflow_name>
workflow.repositoryName=ori-oai-workflow
  • Les éléments sous Identify correspondent à l'identité de votre entrepôt :
    • Les identifiants OAI de vos fiches locales seront de la forme : oai:[SCHEME_IDENTIFIER][REPOSITORY_IDENTIFIER]:[identifiant d'indexation]

  • Renseigner les paramètres filesystem pour l'utilisation en mode "File System"
    • filesystem.directory : définit le répertoire dans lequel on va disposer les fiches à exposer
    • filesystem.md.namespace : spécifie le format de métadonnées exposé (http://ltsc.ieee.org/xsd/LOM pour le LOM)
    • filesystem.filter : spécifie un filtrage des fichiers considérés, à l'aide d'une expression régulière, par défaut "*.xml" (voir documentation WilcardFileFilter )
  • Renseigner les paramètres indexing.* pour l'utilisation en mode "Indexing"** indexing.ws.wsdlDocumentUrl : définit l'URL d'accès au module ORI-OAI-indexing
    • indexing.ws.lookupServiceOnStartup :  initialise la connection au démarrage (laisser à false)
  • Renseigner les paramètres vocabulary.* pour l'utilisation de vocabulaires (set OAI en mode "Indexing") :
    • vocabulary.ws.wsdlDocumentUrl : définit l'URL d'accès au module ORI-OAI-indexing
    • vocabulary.ws.lookupServiceOnStartup :  initialise la connection au démarrage (laisser à false)
  • Optionnel : Par défaut, un fichier log4j.properties est produit automatiquement à partir des fichiers d'exemple (voir section "Niveau de debogage").

4. Configuration en mode "FileSystem"

Mode "File system" versus mode "Indexing"

Par défaut, la configuration proposée utilise le mode Indexing, qui permet d'exposer les fiches indexées, qui sont soient issues du workflow, soit du moissonnage, et définit des dépendances à ces modules. Pour des détails sur cette fonctionnalité, consulter la section Implémentation File system.

Pour activer le mode standalone "File System", il faut suivre les étapes suivantes :

4.1. Activer le bean correspondant.

Pour ce faire, il faut modifier le fichier conf/properties/repository-domain.xml  :

  • commenter l'alias setManager défini sur indexerSetManager ainsi que le bean nativeInfosProvider utilisant la classe org.orioai.repository.dao.NativeInfosProviderImpl
  • décommenter à la place l'alias setManager défini sur fsSetManager et le nativeInfosProvider mais qui utilise cette fois-ci la classe org.orioai.repository.dao.fs.SimpleFSNativeInfosProvider :
<alias name="fsSetManager" alias="setManager"/>

	<bean id="nativeInfosProvider"
		class="org.orioai.repository.dao.fs.SimpleFSNativeInfosProvider">
		<description>
			this nativeInfosProvider enables to expose quickly via
			OAI-PMH some LOM / OAI_DC files stored in a simple File
			System Directory
		</description>

		<property name="dataMDFilesDirectory">
			<value>${filesystem.directory}</value>
		</property>

		<property name="metadataFormat">
			<value>${filesystem.md.namespace}</value>
		</property>

		<property name="namespacePrefixMapper">
			<ref bean="namespacePrefixMapper" />
		</property>

		<property name="workflowName"
			value="${workflow.repositoryName}" />

	</bean>
4.2. Paramétrer les propriétés

Il faut ensuite paramétrer ce nouveau nativeInfosProvider, et pour cela il faut renseigner les propriétés suivantes dans conf/properties/orioaicat.properties :

  • filesystem.directory : définit le répertoire dans lequel on va disposer les fiches à exposer
  • filesystem.md.namespace : spécifie le format de métadonnées exposé ( http://ltsc.ieee.org/xsd/LOM pour le LOM )
  • filesystem.filter : spécifie un filtrage des fichiers considérés, à l'aide d'une expression régulière, par défaut "*.xml" (voir documentation WilcardFileFilter )

Vous n'avez plus qu'à lancer votre Tomcat et tester l'entrepôt via son interface graphique ... ou/et en utilisant la version de démonstration d'ORI-OAI (.exe ou .jar, installable en quelques clic) pour vous moissonner !

5. Configurations avancées (optionnel)

Pour le mode "Indexing" uniquement  (utilisation avec les modules ORI-OAI-indexing et ORI-OAI-vocabulary), il y a la possibilité, en consultant la section Configuration avancée, de pousser plus avant la configuration de certains aspects comme :

  • le filtrage des fiches
  • la constitution d'ensembles
  • les formats exposés

    Note

    Par défaut, et sans modification des fichiers décrits dans ces sections, la configuration permet d'exposer aux format Dublin Core (oai_dc) et LOM(Learning Object Metadata) , avec les ensembles issus de la classification Dewey, les fiches provenant du module Workflow (mode "Indexing").

6. Déploiement

Lancer la tâche ant all: vous pouvez alors accéder à l'interface Web avec le contexte ori-oai-repository, par exemple : http://localhost:8080/ori-oai-repository

  • No labels