Sommaire |
---|
...
Prérequis logiciels
- Java OpenJdk 11
- Maven > 3.1.0
- Postgresql 9 : le mieux est de l'installer via le système de paquets de votre linux.
- Tomcat (Tomcat 8) : http://tomcat.apache.org/
- Apache + libapache2-mod-shib2 : https://services.renater.fr/federation/docs/installation/sp
- Git
- GhostScript
- Sedatools
...
Recupération des sources https://github.com/EsupPortail/esup-signature
|
PostgreSQL
L'ensemble des données est stocké dans une base de données, photos comprises, cela nous a ammené à utiliser PostgreSQL (et non MySQL) pour ses possibilités de streaming sur les blobs.
Sous debian :
|
dans pg_hba.conf : ajout de
...
host all all 127.0.0.1
/32
password
Redémarrage de postgresql
Création de la base :
...
su
postgres
psql
create database esupsignature;
create USER esupsignature with password
'esup'
;
grant ALL ON DATABASE esupsignature to esupsignature;
Cette application a été dévelopée en utilisant Spring ROO et donc ses technologies associées.
Comme annoncé ci-dessus, l'application a cependant été développée avec PostgreSQL : lecture/écriture des blobs dans une transaction par streaming ; idexation postgresql (usage de tsvector/tsquery).
Pour une bonne gestion des blob de cette application, il faut ajouter dans PostgreSQL un trigger sur la base de données sur la table big_file. La fonction lo_manage est nécessaire ici.
Sous debian :
...
apt-get
install
postgresql-contrib
...
avec postgresql 9 :
...
apt-get
install
postgresql-contrib
psql
\c esupsgc
CREATE EXTENSION lo;
Et enfin ajout du trigger (afin que les tables soient préalablement créées, notamment la table big_file sur lequel on souhaite mettre le trigger lo_manage, il faudra avant celà démarrer une fois esup-sgc (avec le paramètre 'create' dans le database.properties)) :
...
CREATE TRIGGER t_big_file BEFORE UPDATE OR DELETE ON big_file FOR EACH ROW EXECUTE PROCEDURE lo_manage(binary_file);
CF https://www.postgresql.org/docs/9.4/static/lo.html
...
Paramétrage mémoire JVM :
...