Il y a 389 articles et 19 utilisateurs inscrits (ce bandeau est défini dans MediaWiki:Sitenotice)

« Doc/Ville-Dole » : différence entre les versions

De AJLSM
Aller à la navigation Aller à la recherche
m →Tomcat : typo
m intervertion 2013-feb-20
 
(47 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
{{Maintenance}}
{{notice|intervention le {{value|2013-feb-20}} suite à une indisponibilité du serveur Tomcat}}
== Serveur ==
{| class="wikitable sortable"
|-
! Description !! Valeur !! Commentaire
|-
| Adresse IP || [http://ead.doledujura.fr/ ead.doledujura.fr] || pas de restriction
|-
| Tomcat || {{value|8080}} || pas de restriction
|-
| SSH || {{value|22}} || uniquement AJLSM
|-
| Séquenceur (Java) || {{value|8181}} || uniquement AJLSM
|}
== Sauvegardes ==
=== Crontab ===
Nous mettons en place une sauvegarde journalière de l'application et de ses données. Pour cela on commence par modifier le {{cmd|crontab}} :
<syntaxhighlight lang="bash">
@daily bash /home/backupAgent/shell-scripts/backup/backup.sh ville-dole-front 2>&1 | tee -a "/home/backupAgent/logs/backup-$(date '+\%Y-\%b-\%d').log"
#@daily bash /home/backupAgent/shell-scripts/backup/backup.sh ville-dole-back 2>&1 | tee -a "/home/backupAgent/logs/backup-$(date '+\%Y-\%b-\%d').log"
</syntaxhighlight>
{{notice|De façon à pouvoir scripter les sauvegardes, il est nécessaire de modifier les configurations de postgreSQL, ceci est documenté dans la  [http://docs.pleade.com/installation/environnement/sgbdr.html documentation Pleade]}}
== Tomcat ==
== Tomcat ==
{{important|L'installation comprends '''deux instances {{Tomcat}}'''. De ce fait, la version installée avec les dépôts Debian ne doit pas être utilisé}}
{{important|L'installation comprends '''deux instances {{Tomcat}}'''. De ce fait, la version installée avec les dépôts Debian ne doit pas être utilisé}}
=== Localisation des serveur ===
==== Localisation des serveur ====
Nous avons installé la version 6.0.35 (binaire) de {{Tomcat}} à partir du [https://tomcat.apache.org/download-60.cgi site officiel] et créé deux dossiers, respectivement :
Nous avons installé la version 6.0.35 (binaire) de {{Tomcat}} à partir du [https://tomcat.apache.org/download-60.cgi site officiel] et créé deux dossiers, respectivement :
* {{path|/opt/tomcat6-front}} : sert l'application de « production »,
{| class="wikitable sortable"
* {{path|/opt/tomcat6-back}} : sert l'application de « recettage ».
|-
! Description !! Production !! Recettage
|-
| Emplacement || {{path|"{{var|$AJLSM_HOME}}"/server/tomcat6-front}} || {{path|"{{var|$AJLSM_HOME}}"/server/tomcat6-back}}
|-
| Commande || <syntaxhighlight lang="bash">flushAndRestart front</syntaxhighlight> || <syntaxhighlight lang="bash">flushAndRestart back</syntaxhighlight>
|}


=== Liens vers l'application ===
=== Liens vers l'application ===
Ligne 29 : Ligne 61 :
<Server port="9005" shutdown="SHUTDOWN">
<Server port="9005" shutdown="SHUTDOWN">
⋮
⋮
     <Connector port="9090" protocol="HTTP/1.1"  
     <Connector port="9090" protocol="HTTP/1.1"
         connectionTimeout="20000"  
         connectionTimeout="20000"
         redirectPort="9443"  
         redirectPort="9443"
         emptySessionPath="true"  
         emptySessionPath="true"
     />
     />
⋮
⋮
     <Connector port="9009" protocol="AJP/1.3"  
     <Connector port="9009" protocol="AJP/1.3"
         redirectPort="9443"  
         redirectPort="9443"
         emptySessionPath="true"  
         emptySessionPath="true"
     />
     />
⋮
⋮
</syntaxhighlight>
</syntaxhighlight>


=== Scripts ===
=== Allocation de mémoire ===
Des alias on étaient définis dans le fichier {{path|~/.bashrc}} pour simplifier la maintenance :
On [[Configuration d'un serveur pour l'installation de Pleade#Reconfiguration des droits|reconfigure Tomcat en suivant la procédure]] avec l'allocation mémoire suivante pour {{var|JAVA_OPTS}} :
* {{cmd|tomcat-log}} : affiche le log tomcat de l'{{var|application}} ;
<syntaxhighlight lang="bash">-Xms400m -Xmx5000m -Djava.awt.headless=true -server -XX:+UseConcMarkSweepGC</syntaxhighlight>
* {{cmd|restartTomcat}} : redémarre l'{{var|application}} ;
 
* {{cmd|flushAndRestart}} : nettoie le cache et redémarre l'{{var|application}}.
=== Arrêt et redémarrage automatique ===
Le paramètre {{var|application}}, est nécessaire et peut prendre l'une des valeurs suivante :
On mettra en place un service pour que l'application redémarre sous certains critères :
* {{value|back}} : application de « recettage » ;
* [[Tomcat#Tâche cron journalière de redémarrage|redémarrage journalier]] ;
* {{value|front}} : application de « production ».
* [[Tomcat#Arrêt et redémarrage automatique|redémarrage du serveur]] intempestif ;


== Application ==
==== Crontab ====
L'application et les fichiers sont installé dans {{path|/home/ajlsm}} :
Les scripts correspondants aux tâche sont placés dans {{var|$AJLSM_HOME}} (cf. section [[#Scripts et redémarrage automatique]] pour plus d'informations).
<syntaxhighlight lang="bash">.
<syntaxhighlight lang="bash" highlight="2,5" >
├── apps
# Redémarrage journalier
│   ├── ville-dole-back
@daily  flushAndRestart front
│   └── ville-dole-front
#@daily flushAndRestart back
├── backup
 
├── data
# Redémarrage physique du serveur
│   └── ville-dole
@reboot flushAndRestart front
├── logs
#@reboot    flushAndRestart back
│   ├── ville-dole-back
│   └── ville-dole-front
├── sdx-data
│   ├── ville-dole-back
│   └── ville-dole-front
├── shell-scripts
│   ├── backup
│   ├── httpd-maintenance
│   └── logs
└── tmp
</syntaxhighlight>
</syntaxhighlight>


== Apache ==
== Apache ==
Nous avons défini un hôte virtuel pour l'application /etc/apache2/sites-enabled/ville-dole-vhost.conf
Nous avons défini un hôte virtuel pour l'application {{path|/etc/apache2/sites-enabled/ville-dole-vhost.conf}}. L'application est à l'heure actuelle accessible uniquement par son adresse IP (http://213.56.103.235), mais tout est en place pour un accès par nom de domaine.
<syntaxhighlight lang="apache">
<syntaxhighlight lang="apache">
<VirtualHost *:80>
<VirtualHost *:80>
Ligne 100 : Ligne 122 :


== Application Pleade ==
== Application Pleade ==
=== Emplacement ===
L'application et les fichiers sont installé dans {{path|/home/ajlsm}} :
<syntaxhighlight lang="bash">.
├── apps
│  ├── ville-dole-back
│  └── ville-dole-front
├── backup
├── data
│  └── ville-dole
├── logs
│  ├── ville-dole-back
│  └── ville-dole-front
├── sdx-data
│  ├── ville-dole-back
│  └── ville-dole-front
├── shell-scripts
│  ├── backup
│  ├── httpd-maintenance
│  └── logs
└── tmp
</syntaxhighlight>
=== Utilisateurs ===
=== Utilisateurs ===
Nous avons créer un compte pour les utilisateurs de la ville de Dole et un pour la gestion faite par AJLSM :
Nous avons créer un compte pour les utilisateurs de la ville de Dole et un pour la gestion faite par AJLSM :
Ligne 123 : Ligne 167 :


=== Dépot OAI ===
=== Dépot OAI ===
Nous avons activez le dépôt OAI dans le fichier {{path|./apps/ville-dole-front/parametres.xconf}} avec les paramètres suivants :
Nous avons activez le dépôt OAI dans le fichier {{path|{{Ville-Dole/App|front}}/parametres.xconf}} avec les paramètres suivants :
<syntaxhighlight lang="xml">
<syntaxhighlight lang="xml">
<ead-oai-repo-name>ville-dole</ead-oai-repo-name>
<ead-oai-repo-name>ville-dole</ead-oai-repo-name>
Ligne 129 : Ligne 173 :
</syntaxhighlight>
</syntaxhighlight>


== Emplacement des fichiers d’autorités ==
==== Association à la boucle locale ====
Nous définissons l'emplacement des fichiers d'autorités dans {{path|./apps/ville-dole-front/WEB-INF/properties/pleade-ville-dole.properties}} :
Les requêtes pour moissonner l'{{value|OAI_DC}} et le {{value|QDC}} ont nécessité de modifier le fichier {{path|/etc/hosts}}. Il a fallu associé l’hôte virtuel à la boucle locale.
<syntaxhighlight lang="text">127.0.0.1  localhost ead.doledujura.fr</syntaxhighlight>
On redémarre ensuite {{httpd}} et {{tomcat}} pour que les modifications soient prises en compte :
<syntaxhighlight lang="bash">
flushAndRestart front
sudo /etc/init.d/apache2 restart
</syntaxhighlight>
{{remarque|On constatera que le nombre de requête interne correspond à la valeur définit dans l'élément {{tag|ead-oai-repo-nb}} du fichier {{path|parametres.xconf}}}}
==== Tests ====
Un premier test pourra être fait en consultant l'URL de vérification du dépôt OAI :
* [http://ville-dole.prod/ead-oai?verb=Identify http://ville-dole.prod/ead-oai?verb=Identify].
* [http://ead.doledujura.fr:8080/ville-dole-front/ead-oai?verb=ListRecords&metadataPrefix=qdc http://ead.doledujura.fr:8080/ville-dole-front/ead-oai?verb=ListRecords&metadataPrefix={{value|'''qdc'''}}]
On pourra également vérifier la disponibilité d'un document EAD grâce à une URL de la forme :
* [http://ville-dole.prod/ead-oai?verb=GetRecord&identifier=sdx:213.56.103.235:module-eadeac/ead/FR--391986102--1AP--1_AP_5-88&metadataPrefix=ead http://ville-dole.prod/ead-oai?verb=GetRecord&identifier=sdx:{{value|213.56.103.235}}:module-eadeac/ead/{{value|FR--391986102--1AP--1_AP_5-88}}&metadataPrefix={{value|'''ead'''}}]
** {{value|213.56.103.235}}, correspond au paramètre {{var|pleade.public-url}} décrit dans pleade {{path|{{Ville-Dole/App|front}}/WEB-INF/properties/pleade-admin.properties}} ;
** {{value|FR--391986102--1AP--1_AP_5-88}}, correspond à l'identifiant d'un document EAD.
 
=== Emplacement des fichiers d’autorités ===
Nous définissons l'emplacement des fichiers d'autorités dans {{path|{{Ville-Dole/App|front}}/WEB-INF/properties/pleade-ville-dole.properties}} :
<syntaxhighlight lang="ini">
<syntaxhighlight lang="ini">
pleade.csv-docs-dir=/home/ajlsm/data/ville-dole/ead/
pleade.csv-docs-dir=/home/ajlsm/data/ville-dole/ead/


# Le fichier de template xsl.
# Le fichier de template xsl.
pleade.ead-file=/home/ajlsm/data/ville-dole/AJSLM_PVR_RAM/AJSLM_PVR_DATA_EAD_5-fev-02-modifier.csv
pleade.ead-file=/home/ajlsm/data/ville-dole/AJSLM_PVR_DATA_EAD/AJSLM_PVR_DATA_EAD_5-fev-02-modifier.csv


# le fichier d'information sur les images
# le fichier d'information sur les images
Ligne 144 : Ligne 206 :
</syntaxhighlight>
</syntaxhighlight>


==== Accès simplifié ====
Un accès simplifier et mis en place pour l'utilisateur {{var|ville-dole}}, les chemins sont alors :
* {{path|/home/ville-dole/csv}} : si on veut faire une interface type EAD (sélectionner un {{var|id}} et ça fait le reste) ;
* {{path|/home/ville-dole/images}} : images utilisés par l'EAD ;
* {{path|/home/ville-dole/EAD}} : fichier EAD issu de la conversion des CSV.
On rajoute les droits de lecture/écriture aux utilisateurs du groupe :
<syntaxhighlight lang="bash">chmod g+w -R EAD/ images/ csv/</syntaxhighlight>
== Conversion des données en CSV ==
=== Format des données ===
Le fichier décrivant les images précise l'identifiant de la pièce dans sa première colonne. Cette identifiant correspond à des informations dans le fichier décrivant les données de l'EAD, elles sont concaténées.
==== Construction de l'{{attr|eadid}} ====
L'{{attr|eadid}} est construit sur comme une concaténation de plusieurs champs, issus du fichier {{path|*_DATA_EAD_*.csv}} :
* <del>le code pays : {{value|FR}} (constante)</del> ;
* l'identifiant du service d'archives : {{value|FR391986102}} (constante) <del>(parti après le {{var|FR}})</del> ;
* « {{value|:}} » (deux-points) séparateurs ;
* l'identifiant du fond : par exemple {{value|1AP1-4}} ;
* « {{value|:}} » (deux-points) séparateurs ;
* l'identifiant du sous-fond : par exemple {{value|1AP1-4}} ;
=== Navigation entre les documents ===
Pleade permet de naviguer d'un document à l'autre, pour cela il faut s'appuyer sur l'{{attr|eadid}} et les identifiant ({{attr|id}}) des éléments {{tag|c}}.
Une convention a été mis en place pour que les éditeurs du projet puissent indiquer des liens de navigation entre les documents dans certaines colonnes. Nous détaillons ci-dessous les formats pour les liens intra- et inter-documents (leurs structure est légèrement différente).
==== Format des liens de navigation ====
Les références doivent être comprises entre accolades « {{value|{}} » « {{value|&#125;}} » et ne contenir que des caractères parmi la liste suivante :
* caractère alphabétique non-accentué entre A et Z (la casse importe peu) ;
* chiffres entre 0 et 9 ;
* point ({{value|.}})<ref>[http://www.liafa.jussieu.fr/~carton/Enseignement/XML/Cours/Syntax/index.html#id3791394 2.2.3. Jetons et noms XML]</ref> ;
* trait d'union ({{value|-}}) ;
* tiret bas ({{value|_}}) ;
* deux-points ({{value|:}})<ref>[http://www.w3.org/TR/2008/REC-xml-20081126/#NT-NameStartChar 2.3 Common Syntactic Constructs]</ref> ;
* dièse ({{value|#}}).
Ce qui implique que les références doivent validées l'expression régulière suivante : {{value|([\w\.\-_:]+?(#[\w\.\-_:]+?)?)}}.
Voici un exemple de cellule faisant des références intra- et inter-documents :
D'abord une référence interne {FR391986102:1AP:5.1.8} et une autre référence,
externe celle là {FR391986102:1AP:1AP1-4#FR391986102:1AP:1.1.16}
{{notice|Il est nécessaire d'entourer cette référence d'accolades pour qu'elle soit reconnue. Par exemple : '''{'''{{var|FR391986102:1AP1-4:5.1.88}}'''&#125;'''}}
==== Liens intra-document ====
Pour les liens intra-documents (ou référence interne), c'est à dire restant dans le même sous-fond, nous avons besoin de 3 information pour créer le lien :
* l'identifiant du service d'archives : {{value|FR391986102}} (constante) ;
* l'identifiant du fond cible : par exemple {{value|1AP1-4}} ;
* l'identifiant de la pièce : par exemple {{value|5.1.88}} ;
Ainsi que du « {{value|:}} » (deux-points) qui permet de séparer ces 3 valeurs. Ce qui nous permet de former une référence du type :
{{figure|
[[Fichier:Ville-dole-Convention-référence-intra-document.png|center]]
|caption=référence '''interne''' au document EAD en cours, p. ex. : '''{'''{{var|FR391986102:1AP:1.1.16}}'''&#125;'''
}}
{{important|les espaces étant invalides dans les {{attr|id}}, il est impératif de les supprimer des composant}}
==== Liens inter-documents ====
Les références vers d'autres documents EAD  (ou référence interne) doivent ''''utiliser des références complètes''', car on envoi vers des fonds ou sous-fonds différents. C'est-à-dire :
* référence vers le document cible : l'attribut {{attr|eadid}} du document ;
* vers la pièce : l'attribut {{attr|id}} des éléments {{tag|c {{attr|level}}&#61;"{{value|item}}" {{attr|id}}&#61;"{{value|xyz}}"}}.
Ce format de référence s'appuie sur la syntaxe des référence intra-document. La différence tient au fait que l'on précise le document que l'on vise avant d'indiquer la pièce souhaitée. On a alors la séquence suivante  :
* Partie « document » EAD :
*# l'identifiant du service d''''archives détenteur''' : {{value|FR391986102}} (constante) ;
*#* « {{value|:}} » (deux-points) séparateurs ;
*# l'identifiant du '''fonds''' : par exemple {{value|1AP1-4}} ;
*#* « {{value|:}} » (deux-points) séparateurs ;
*# l'identifiant du '''sous-fonds''' : par exemple {{value|1AP1-4}} ;
* « {{value|#}} » (dièse) séparateurs ou '''ancre''' ;
* Partie « fragment », identique aux [[#Liens intra-document|références internes]].
** l'identifiant du service d''''archives détenteur''' : {{value|FR391986102}} (constante) ;
** l'identifiant du '''fonds''' cible : par exemple {{value|1AP1-4}} ;
** l'identifiant de la '''pièce''' : par exemple {{value|5.1.88}}.
Ce qui nous permet de former une référence du type :
{{figure|
[[Fichier:Ville-dole-Convention-référence-inter-document.png|center]]
|caption=référence '''externe''' au document EAD en cours, p. ex. : {{var|FR391986102:1AP:1AP1-4#{{value|FR391986102:1AP:1.1.16}} }}
}}
=== Export en {{var|.csv}} ===
Les fichiers de données fournis par le client sont au format {{var|.xls}}. L'application Pléade ne gérant pas ce format, il est nécessaire de les exporter en {{var|.csv}} via OpenOffice.org ou Microsoft Office. Lors de cette conversion il est important de vérifier les 3 paramètres suivants :
* Encodage : {{value|UTF-8}} ;
* Séparateur de champs : {{value|{Tab} }} (Tabulation) ;
* Séparateur de texte : '''{{value|"}}''' (guillemet double).
{{figure|[[Fichier:csv-export.png|center]]|caption=Fenêtre d'export LibreOffice.}}
=== Conversion dans Pleade ===
{{figure|[[Fichier:Ville-dole-conversion-csv.png|center]]|caption=Séquence de conversion dans Pleade}}
== Références ==
<references/>


[[category:Doc]]
[[category:Doc]]

Dernière version du 20 février 2013 à 17:41

Notice :
Application sous contrat de Maintenance.
Notice :
intervention le 2013-feb-20 suite à une indisponibilité du serveur Tomcat.
Description Valeur Commentaire
Adresse IP ead.doledujura.fr pas de restriction
Tomcat 8080 pas de restriction
SSH 22 uniquement AJLSM
Séquenceur (Java) 8181 uniquement AJLSM

Nous mettons en place une sauvegarde journalière de l'application et de ses données. Pour cela on commence par modifier le crontab :

@daily bash /home/backupAgent/shell-scripts/backup/backup.sh ville-dole-front 2>&1 | tee -a "/home/backupAgent/logs/backup-$(date '+\%Y-\%b-\%d').log"
#@daily bash /home/backupAgent/shell-scripts/backup/backup.sh ville-dole-back 2>&1 | tee -a "/home/backupAgent/logs/backup-$(date '+\%Y-\%b-\%d').log"
Notice :
De façon à pouvoir scripter les sauvegardes, il est nécessaire de modifier les configurations de postgreSQL, ceci est documenté dans la documentation Pleade.
Important :
L'installation comprends deux instances Apache Tomcat. De ce fait, la version installée avec les dépôts Debian ne doit pas être utilisé.

Localisation des serveur

[modifier | modifier le wikicode]

Nous avons installé la version 6.0.35 (binaire) de Apache Tomcat à partir du site officiel et créé deux dossiers, respectivement :

Description Production Recettage
Emplacement "$AJLSM_HOME"/server/tomcat6-front "$AJLSM_HOME"/server/tomcat6-back
Commande
flushAndRestart front
flushAndRestart back

Liens vers l'application

[modifier | modifier le wikicode]

L'application est installé dans /home/ajlsm/, de façon à rendre l'application Pleade nous avons placer un lien vers ce dossier dans le dossier webapps/ de Apache Tomcat.

Configuration du serveur : server.xml

[modifier | modifier le wikicode]

Nous avons configuré le serveur Apache Tomcat de recettage pour qu'il écoute sur des ports différents de ceux du serveur de production, ceci dans le but d'éviter tout conflits entre les deux environnements. Les modifications ont été effectué dans /opt/tomcat-back et /opt/tomcat-front et sont décrites ci-dessous :

Type de Port Production Recettage
arrêt 8005 9005
écoute (connecteur HTTP) 8080 9090
redirection (connecteur HTTP) 8443 9443
écoute (connecteur AJP/1.3) 8009 9009
redirection (connecteur AJP/1.3) 8443 9443

Il faut également rajouter l'attribut emptySessionPath=true sur le connecteur HTTP/1.1 et AJP/1.3, de façon à faire persister les sessions :

<Server port="9005" shutdown="SHUTDOWN">
⋮
    <Connector port="9090" protocol="HTTP/1.1"
        connectionTimeout="20000"
        redirectPort="9443"
        emptySessionPath="true"
    />
⋮
    <Connector port="9009" protocol="AJP/1.3"
        redirectPort="9443"
        emptySessionPath="true"
    />
⋮

Allocation de mémoire

[modifier | modifier le wikicode]

On reconfigure Tomcat en suivant la procédure avec l'allocation mémoire suivante pour JAVA_OPTS :

-Xms400m -Xmx5000m -Djava.awt.headless=true -server -XX:+UseConcMarkSweepGC

Arrêt et redémarrage automatique

[modifier | modifier le wikicode]

On mettra en place un service pour que l'application redémarre sous certains critères :

Les scripts correspondants aux tâche sont placés dans $AJLSM_HOME (cf. section #Scripts et redémarrage automatique pour plus d'informations).

# Redémarrage journalier
@daily  flushAndRestart front
#@daily flushAndRestart back

# Redémarrage physique du serveur
@reboot flushAndRestart front
#@reboot    flushAndRestart back

Nous avons défini un hôte virtuel pour l'application /etc/apache2/sites-enabled/ville-dole-vhost.conf. L'application est à l'heure actuelle accessible uniquement par son adresse IP (http://213.56.103.235), mais tout est en place pour un accès par nom de domaine.

<VirtualHost *:80>
    ServerAdmin ajlsm+ville-dole@ajlsm.com

    ServerName ville-dole.com
    ServerAlias www.ville-dole.com  www.ville-dole.prod ville-dole.prod

    # Application de recette
    ProxyPass /ville-dole-back/ ajp://localhost:9009/ville-dole-back/
    ProxyPassReverse /ville-dole-back/ ajp://localhost:9009/ville-dole-back/

    # Application de production
    ProxyPass / ajp://localhost:8009/ville-dole/
    ProxyPassReverse / ajp://localhost:8009/ville-dole/

    ErrorLog ${APACHE_LOG_DIR}/error-ville-dole.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog ${APACHE_LOG_DIR}/access-ville-dole.log combined
</VirtualHost>

Application Pleade

[modifier | modifier le wikicode]

L'application et les fichiers sont installé dans /home/ajlsm :

.
├── apps
│   ├── ville-dole-back
│   └── ville-dole-front
├── backup
├── data
│   └── ville-dole
├── logs
│   ├── ville-dole-back
│   └── ville-dole-front
├── sdx-data
│   ├── ville-dole-back
│   └── ville-dole-front
├── shell-scripts
│   ├── backup
│   ├── httpd-maintenance
│   └── logs
└── tmp

Nous avons créer un compte pour les utilisateurs de la ville de Dole et un pour la gestion faite par AJLSM :

  • ville-dole ;
  • script : compte désactivé par mesure de sécurité.

Paramètres spéciaux

[modifier | modifier le wikicode]
pleade.url-interne=http://localhost:8080/ville-dole-front/
⋮
pleade.public-url=http://213.56.103.235/
⋮
pleade.sdx-data-dir=file:///home/ajlsm/sdx-data/ville-dole-front
⋮
pleade.log-file-directory=/home/ajlsm/logs/ville-dole-front
⋮
pleade.ead-docs-dir=/home/ajlsm/data/ville-dole/ead/
⋮
pleade.img-server.racines=/home/ajlsm/data/ville-dole/images/
⋮
pleade.images.preparees=/home/ajlsm/data/ville-dole/images-preparees/

Nous avons activez le dépôt OAI dans le fichier /home/ajlsm/apps/ville-dole-front/parametres.xconf avec les paramètres suivants :

<ead-oai-repo-name>ville-dole</ead-oai-repo-name>
<ead-oai-repo-admin-email>s.sauge@dole.org</ead-oai-repo-admin-email>

Association à la boucle locale

[modifier | modifier le wikicode]

Les requêtes pour moissonner l'OAI_DC et le QDC ont nécessité de modifier le fichier /etc/hosts. Il a fallu associé l’hôte virtuel à la boucle locale.

127.0.0.1   localhost ead.doledujura.fr

On redémarre ensuite Apache HTTPd et Apache Tomcat pour que les modifications soient prises en compte :

flushAndRestart front
sudo /etc/init.d/apache2 restart

Remarques : On constatera que le nombre de requête interne correspond à la valeur définit dans l'élément <ead-oai-repo-nb> du fichier parametres.xconf.

Un premier test pourra être fait en consultant l'URL de vérification du dépôt OAI :

On pourra également vérifier la disponibilité d'un document EAD grâce à une URL de la forme :

Emplacement des fichiers d’autorités

[modifier | modifier le wikicode]

Nous définissons l'emplacement des fichiers d'autorités dans /home/ajlsm/apps/ville-dole-front/WEB-INF/properties/pleade-ville-dole.properties :

pleade.csv-docs-dir=/home/ajlsm/data/ville-dole/ead/

# Le fichier de template xsl.
pleade.ead-file=/home/ajlsm/data/ville-dole/AJSLM_PVR_DATA_EAD/AJSLM_PVR_DATA_EAD_5-fev-02-modifier.csv

# le fichier d'information sur les images
pleade.img-file=/home/ajlsm/data/ville-dole/AJSLM_PVR_DATA_IMG/AJSLM_PVR_IMG_5-modifier.csv

# le fichier d'autorite rameau
pleade.ram-file=/home/ajlsm/data/ville-dole/AJSLM_PVR_RAM/AJSLM_PVR_RAM_1-fev-02-modifier.csv

Accès simplifié

[modifier | modifier le wikicode]

Un accès simplifier et mis en place pour l'utilisateur ville-dole, les chemins sont alors :

  • /home/ville-dole/csv : si on veut faire une interface type EAD (sélectionner un id et ça fait le reste) ;
  • /home/ville-dole/images : images utilisés par l'EAD ;
  • /home/ville-dole/EAD : fichier EAD issu de la conversion des CSV.

On rajoute les droits de lecture/écriture aux utilisateurs du groupe :

chmod g+w -R EAD/ images/ csv/

Conversion des données en CSV

[modifier | modifier le wikicode]

Format des données

[modifier | modifier le wikicode]

Le fichier décrivant les images précise l'identifiant de la pièce dans sa première colonne. Cette identifiant correspond à des informations dans le fichier décrivant les données de l'EAD, elles sont concaténées.

Construction de l'eadid

[modifier | modifier le wikicode]

L'eadid est construit sur comme une concaténation de plusieurs champs, issus du fichier *_DATA_EAD_*.csv :

  • le code pays : FR (constante) ;
  • l'identifiant du service d'archives : FR391986102 (constante) (parti après le FR) ;
  • « : » (deux-points) séparateurs ;
  • l'identifiant du fond : par exemple 1AP1-4 ;
  • « : » (deux-points) séparateurs ;
  • l'identifiant du sous-fond : par exemple 1AP1-4 ;


[modifier | modifier le wikicode]

Pleade permet de naviguer d'un document à l'autre, pour cela il faut s'appuyer sur l'eadid et les identifiant (id) des éléments <c>.

Une convention a été mis en place pour que les éditeurs du projet puissent indiquer des liens de navigation entre les documents dans certaines colonnes. Nous détaillons ci-dessous les formats pour les liens intra- et inter-documents (leurs structure est légèrement différente).

Format des liens de navigation

[modifier | modifier le wikicode]

Les références doivent être comprises entre accolades « { » « } » et ne contenir que des caractères parmi la liste suivante :

Ce qui implique que les références doivent validées l'expression régulière suivante : ([\w\.\-_:]+?(#[\w\.\-_:]+?)?).

Voici un exemple de cellule faisant des références intra- et inter-documents :

D'abord une référence interne {FR391986102:1AP:5.1.8} et une autre référence,
externe celle là {FR391986102:1AP:1AP1-4#FR391986102:1AP:1.1.16}
Notice :
Il est nécessaire d'entourer cette référence d'accolades pour qu'elle soit reconnue. Par exemple : {FR391986102:1AP1-4:5.1.88}.

Liens intra-document

[modifier | modifier le wikicode]

Pour les liens intra-documents (ou référence interne), c'est à dire restant dans le même sous-fond, nous avons besoin de 3 information pour créer le lien :

  • l'identifiant du service d'archives : FR391986102 (constante) ;
  • l'identifiant du fond cible : par exemple 1AP1-4 ;
  • l'identifiant de la pièce : par exemple 5.1.88 ;

Ainsi que du « : » (deux-points) qui permet de séparer ces 3 valeurs. Ce qui nous permet de former une référence du type :

Figure : référence interne au document EAD en cours, p. ex. : {FR391986102:1AP:1.1.16}

Important :
les espaces étant invalides dans les id, il est impératif de les supprimer des composant.

Liens inter-documents

[modifier | modifier le wikicode]

Les références vers d'autres documents EAD (ou référence interne) doivent 'utiliser des références complètes, car on envoi vers des fonds ou sous-fonds différents. C'est-à-dire :

  • référence vers le document cible : l'attribut eadid du document ;
  • vers la pièce : l'attribut id des éléments <c level="item" id="xyz">.

Ce format de référence s'appuie sur la syntaxe des référence intra-document. La différence tient au fait que l'on précise le document que l'on vise avant d'indiquer la pièce souhaitée. On a alors la séquence suivante  :

  • Partie « document » EAD :
    1. l'identifiant du service d'archives détenteur : FR391986102 (constante) ;
      • « : » (deux-points) séparateurs ;
    2. l'identifiant du fonds : par exemple 1AP1-4 ;
      • « : » (deux-points) séparateurs ;
    3. l'identifiant du sous-fonds : par exemple 1AP1-4 ;
  • « # » (dièse) séparateurs ou ancre ;
  • Partie « fragment », identique aux références internes.
    • l'identifiant du service d'archives détenteur : FR391986102 (constante) ;
    • l'identifiant du fonds cible : par exemple 1AP1-4 ;
    • l'identifiant de la pièce : par exemple 5.1.88.

Ce qui nous permet de former une référence du type :

Figure : référence externe au document EAD en cours, p. ex. : FR391986102:1AP:1AP1-4#FR391986102:1AP:1.1.16

Export en .csv

[modifier | modifier le wikicode]

Les fichiers de données fournis par le client sont au format .xls. L'application Pléade ne gérant pas ce format, il est nécessaire de les exporter en .csv via OpenOffice.org ou Microsoft Office. Lors de cette conversion il est important de vérifier les 3 paramètres suivants :

  • Encodage : UTF-8 ;
  • Séparateur de champs : {Tab} (Tabulation) ;
  • Séparateur de texte : " (guillemet double).

Figure : Fenêtre d'export LibreOffice.

Conversion dans Pleade

[modifier | modifier le wikicode]

Figure : Séquence de conversion dans Pleade

<references/>