> For the complete documentation index, see [llms.txt](https://documentation.efalia.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://documentation.efalia.com/documentations/efalia-process/administration/administration-technique/annexes-techniques.md).

# Annexes Techniques

Cette page regroupe les références techniques utiles pour l'administration d'Efalia Process : paramètres de configuration, structure des répertoires, URLs de référence et commandes courantes.

***

## Référence des Paramètres catalina.properties

Le fichier `<CATALINA_HOME>/conf/catalina.properties` contient l'ensemble des paramètres de configuration du serveur Efalia Process. Il est nécessaire de **redémarrer Tomcat** après toute modification.

### Connexion Base de Données

| Paramètre                           | Obligatoire | Exemple                                                                      | Description                                         |
| ----------------------------------- | ----------- | ---------------------------------------------------------------------------- | --------------------------------------------------- |
| `workey.datasource.url`             | ✅           | `jdbc:mysql://localhost:3306/workey?useUnicode=true&characterEncoding=UTF-8` | URL de connexion JDBC                               |
| `workey.datasource.username`        | ✅           | `workey`                                                                     | Compte base de données                              |
| `workey.datasource.password`        | ✅           | `***`                                                                        | Mot de passe base de données                        |
| `workey.datasource.driverClassName` | ✅           | `com.mysql.jdbc.Driver`                                                      | Classe du driver JDBC                               |
| `workey.datasource.maxActive`       | ❌           | `20`                                                                         | Nombre maximum de connexions actives dans le pool   |
| `workey.datasource.maxIdle`         | ❌           | `10`                                                                         | Nombre maximum de connexions inactives dans le pool |

**Classes de drivers JDBC selon le SGBD :**

| SGBD       | Classe driver                                  |
| ---------- | ---------------------------------------------- |
| MySQL      | `com.mysql.jdbc.Driver`                        |
| Oracle     | `oracle.jdbc.driver.OracleDriver`              |
| PostgreSQL | `org.postgresql.Driver`                        |
| SQL Server | `com.microsoft.sqlserver.jdbc.SQLServerDriver` |

***

### Annuaire LDAP / Active Directory

| Paramètre                     | Obligatoire | Exemple                        | Description                        |
| ----------------------------- | ----------- | ------------------------------ | ---------------------------------- |
| `workey.ldap.url`             | ✅           | `ldap://ldap-server:389`       | URL du serveur LDAP                |
| `workey.ldap.userDn`          | ✅           | `cn=service,dc=company,dc=com` | DN du compte de service LDAP       |
| `workey.ldap.password`        | ✅           | `***`                          | Mot de passe du compte LDAP        |
| `workey.ldap.userSearchBase`  | ✅           | `ou=users,dc=company,dc=com`   | Base de recherche des utilisateurs |
| `workey.ldap.groupSearchBase` | ❌           | `ou=groups,dc=company,dc=com`  | Base de recherche des groupes      |
| `workey.ldap.userFilter`      | ❌           | `(sAMAccountName={0})`         | Filtre de recherche utilisateur    |

***

### Répertoires de Données

| Paramètre                                      | Obligatoire | Exemple                        | Description                                        |
| ---------------------------------------------- | ----------- | ------------------------------ | -------------------------------------------------- |
| `workey.data.dir`                              | ✅           | `/data/workey-data`            | Répertoire principal des données Efalia Process    |
| `com.clog.workey.directory.archives`           | ❌           | `/data/workey-archives`        | Répertoire des bases d'archives (module archivage) |
| `com.clog.workey.directory.velocity-templates` | ❌           | `../workey/velocity-templates` | Répertoire des templates Velocity pour les emails  |

***

### Email (SMTP)

| Paramètre                   | Obligatoire | Exemple                                | Description                  |
| --------------------------- | ----------- | -------------------------------------- | ---------------------------- |
| `workey.mail.smtp.host`     | ✅           | `smtp.company.com`                     | Serveur SMTP                 |
| `workey.mail.smtp.port`     | ❌           | `587`                                  | Port SMTP (défaut : 25)      |
| `workey.mail.smtp.auth`     | ❌           | `true`                                 | Authentification SMTP        |
| `workey.mail.smtp.user`     | ❌           | `noreply@company.com`                  | Compte SMTP                  |
| `workey.mail.smtp.password` | ❌           | `***`                                  | Mot de passe SMTP            |
| `workey.mail.smtp.starttls` | ❌           | `true`                                 | Activer STARTTLS             |
| `workey.mail.from`          | ❌           | `Efalia Process <noreply@company.com>` | Expéditeur des notifications |

***

### Front Office

| Paramètre                                  | Valeurs               | Description                                |
| ------------------------------------------ | --------------------- | ------------------------------------------ |
| `com.clog.workey.app.panorama.enable`      | `true` / `false`      | Active l'interface Panorama                |
| `com.clog.workey.app.vertical.apps.enable` | `true` / `false`      | Active les applications verticales (Store) |
| `com.clog.workey.app.mode`                 | `ON_PREMISE` / `SAAS` | Mode de déploiement                        |
| `com.clog.workey.app.language`             | `fr` / `en`           | Langue par défaut de l'interface           |

***

### Connecteurs et Notifications

| Paramètre                                             | Exemple                                                   | Description                                    |
| ----------------------------------------------------- | --------------------------------------------------------- | ---------------------------------------------- |
| `com.clog.workey.events.preNotification`              | `com.clog.workey.connectors.events.VelocityMailConnector` | Connecteur d'événement email (preNotification) |
| `com.clog.workey.connectors.AutoNumbering.datasource` | `workey-incrmt-ds`                                        | Source de données du connecteur AutoNumbering  |
| `DocxMergeConnector.defaultModelsPath`                | `../workey/docx/templates`                                | Chemin par défaut des modèles DOCX             |
| `DocxMergeConnector.defaultOutputPath`                | `../workey/docx/merge`                                    | Chemin par défaut de sortie DOCX               |
| `PdfMergeConnector.defaultModelsPath`                 | `../workey/pdf/templates`                                 | Chemin par défaut des modèles PDF              |
| `PdfMergeConnector.defaultOutputPath`                 | `../workey/pdf/merge`                                     | Chemin par défaut de sortie PDF                |

***

### Intégrations Externes

| Paramètre                               | Description                                       |
| --------------------------------------- | ------------------------------------------------- |
| `com.clog.workey.onlyoffice.server.url` | URL du serveur OnlyOffice pour l'édition en ligne |
| `com.clog.workey.pdftron.server.url`    | URL du serveur PDFTron pour la visualisation PDF  |
| `com.clog.workey.starpage.ws.server`    | URL du webservice Starpage                        |
| `com.clog.workey.starpage.ws.key`       | Clé d'authentification Starpage                   |

***

## Structure des Répertoires

### Répertoire Tomcat (`<CATALINA_HOME>`)

```
<CATALINA_HOME>/
├── bin/
│   ├── startup.sh / startup.bat         ← Démarrage
│   ├── shutdown.sh / shutdown.bat       ← Arrêt
│   └── setenv.sh / setenv.bat           ← Paramètres JVM
│
├── conf/
│   ├── catalina.properties              ← Configuration Efalia Process
│   ├── log4j.properties                 ← Niveaux de journalisation
│   └── server.xml                       ← Configuration Tomcat (ports, SSL…)
│
├── lib/
│   └── <driver-jdbc>.jar                ← Driver JDBC du SGBD
│
├── logs/
│   ├── catalina.out                     ← Journal principal
│   └── catalina.YYYY-MM-DD.log          ← Journaux rotatifs
│
├── webapps/
│   ├── workey.war                       ← Application Efalia Process
│   └── workey/                          ← Répertoire déployé (généré au démarrage)
│
└── workey/
    └── workey-license.xml               ← Fichier de licence
```

### Répertoire de Données (`$WORKEY_DATA`)

```
$WORKEY_DATA/
├── settings/
│   └── settings.json                   ← Configuration du Front Office
│
├── attachments/                        ← Pièces jointes des documents
│
├── skins/                              ← Thèmes personnalisés (v6.14.0+)
│   └── <nom-du-theme>/
│       ├── app/
│       ├── designer/
│       └── login/
│
├── scripts/                            ← Scripts Groovy (ScriptConnector)
│   └── mon_script.groovy
│
├── velocity-templates/                 ← Templates email Velocity
│   └── mail/
│       └── Process-Doctype-State.vml
│
├── docx/                               ← Modèles et sorties DocxMerge
│   ├── templates/
│   └── merge/
│
├── pdf/                                ← Modèles et sorties PdfMerge
│   ├── templates/
│   └── merge/
│
└── archives/                           ← Bases d'archives (module archivage)
    └── <nom-base-archive>/
        ├── documents/
        ├── attachments/
        ├── index/
        └── metadata.js
```

***

## URLs de Référence

### Interfaces Utilisateur

| Interface                   | URL                                            | Accès                  |
| --------------------------- | ---------------------------------------------- | ---------------------- |
| Application web (Panorama)  | `http://[serveur]:8080/workey`                 | Tous les utilisateurs  |
| Application web (Store)     | `http://[serveur]:8080/workey/store/#/[route]` | Tous les utilisateurs  |
| Console d'administration    | `http://[serveur]:8080/workey/admin`           | Workflow Manager       |
| Designer HTML               | `http://[serveur]:8080/workey/designer`        | Workflow Manager       |
| API REST                    | `http://[serveur]:8080/workey/workey-j2ee-api` | Développeurs           |
| Archives (si module activé) | `http://[serveur]:8080/workey/archives`        | Utilisateurs habilités |

### URLs à Autoriser (Reverse Proxy / Firewall)

Si Efalia Process est déployé derrière un reverse proxy, pensez à autoriser les URLs suivantes :

```
$CONTEXT_PROCESS/workey/webhook/*        ← Webhooks entrants
$CONTEXT_PROCESS/publish/public/*        ← Espace de publication (ressources web)
```

Exemple avec Apache comme reverse proxy :

```apache
ProxyPass /workey http://localhost:8080/workey
ProxyPassReverse /workey http://localhost:8080/workey
```

***

## Configuration JVM Recommandée

À définir dans `<CATALINA_HOME>/bin/setenv.sh` (Linux) ou `setenv.bat` (Windows) :

```bash
# Mémoire (adapter selon la RAM disponible)
JAVA_OPTS="-Xms512m -Xmx2048m"

# Encodage (obligatoire)
JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=UTF-8"

# Fuseau horaire
JAVA_OPTS="$JAVA_OPTS -Duser.timezone=Europe/Paris"

# Locale française
JAVA_OPTS="$JAVA_OPTS -Duser.language=fr -Duser.country=FR"

# Résolution DNS (optionnel — améliore les perf LDAP)
JAVA_OPTS="$JAVA_OPTS -Dsun.net.inetaddr.ttl=60"
```

**Dimensionnement mémoire (`-Xmx`) :**

| Volumétrie            | Recommandation                                   |
| --------------------- | ------------------------------------------------ |
| < 50 utilisateurs     | `-Xmx2048m` (2 Go)                               |
| 50 à 200 utilisateurs | `-Xmx4096m` (4 Go)                               |
| > 200 utilisateurs    | Consulter Efalia pour dimensionnement spécifique |

***

## Commandes Utiles

### Gestion du Serveur

```bash
# Démarrer Tomcat
<CATALINA_HOME>/bin/startup.sh

# Arrêter Tomcat
<CATALINA_HOME>/bin/shutdown.sh

# Vérifier que Tomcat tourne
ps aux | grep tomcat

# Consulter les logs en temps réel
tail -f <CATALINA_HOME>/logs/catalina.out

# Filtrer les erreurs dans les logs
grep -i "ERROR\|Exception" <CATALINA_HOME>/logs/catalina.out | tail -50
```

### Gestion de la Base de Données

```bash
# MySQL — connexion
mysql -u workey -p workey

# MySQL — sauvegarde
mysqldump -u workey -p workey > backup_workey_$(date +%Y%m%d).sql

# PostgreSQL — sauvegarde
pg_dump -U workey workey > backup_workey_$(date +%Y%m%d).sql
```

### Gestion des Fichiers Tomcat

```bash
# Déployer un nouveau WAR
cp workey-6.14.2-mysql/server/mysql/workey.war <CATALINA_HOME>/webapps/

# Supprimer l'ancien déploiement
rm -f <CATALINA_HOME>/webapps/workey.war
rm -rf <CATALINA_HOME>/webapps/workey/

# Vérifier les droits sur le répertoire de données
ls -la $WORKEY_DATA
chown -R tomcat:tomcat $WORKEY_DATA  # Linux — si nécessaire
```

***

## Drivers JDBC — Versions Recommandées

| SGBD             | Driver                           | Téléchargement                      |
| ---------------- | -------------------------------- | ----------------------------------- |
| MySQL 5.x / 8.x  | `mysql-connector-java-8.x.x.jar` | Maven Central / dev.mysql.com       |
| Oracle 11g / 19c | `ojdbc8.jar`                     | Oracle Technology Network           |
| PostgreSQL 12+   | `postgresql-42.x.x.jar`          | Maven Central / jdbc.postgresql.org |
| SQL Server 2016+ | `mssql-jdbc-11.x.x.jar`          | Maven Central / Microsoft           |

***

## Codes d'Erreur Courants

| Erreur                                        | Cause probable                                            | Solution                                              |
| --------------------------------------------- | --------------------------------------------------------- | ----------------------------------------------------- |
| `404 Not Found` sur `/workey`                 | WAR non déployé ou Tomcat non démarré                     | Vérifier `<CATALINA_HOME>/webapps/` et les logs       |
| `Cannot create JDBC connection`               | Paramètres BDD incorrects ou serveur inaccessible         | Vérifier `catalina.properties` et la connexion réseau |
| `java.lang.OutOfMemoryError: Java heap space` | Mémoire JVM insuffisante                                  | Augmenter `-Xmx` dans `setenv.sh`                     |
| `License file not found`                      | `workey-license.xml` absent ou à la mauvaise place        | Vérifier `<CATALINA_HOME>/workey/workey-license.xml`  |
| `LDAP authentication failed`                  | Paramètres LDAP incorrects                                | Vérifier URL LDAP, DN de service et mot de passe      |
| `ClassNotFoundException: [driver]`            | Driver JDBC absent de `<CATALINA_HOME>/lib/`              | Copier le `.jar` dans `lib/` et redémarrer            |
| Page Designer blanche                         | Navigateur non supporté ou rôle Workflow Manager manquant | Vérifier navigateur (< 2 ans) et rôle dans l'admin    |

***

## Checklist de Déploiement

Utilisez cette checklist pour valider une installation ou mise à jour :

```
☐ JDK 1.8.x installé et JAVA_HOME configuré
☐ Tomcat 8.5+ démarré sans erreur
☐ Base de données UTF-8 créée et accessible
☐ Driver JDBC présent dans <CATALINA_HOME>/lib/
☐ catalina.properties configuré (BDD, LDAP, SMTP, WORKEY_DATA)
☐ setenv.sh/bat configuré avec -Xmx et encodage UTF-8
☐ workey.war déployé dans <CATALINA_HOME>/webapps/
☐ workey-license.xml présent dans <CATALINA_HOME>/workey/
☐ $WORKEY_DATA créé avec droits lecture/écriture pour Tomcat
☐ Application web accessible sur /workey
☐ Console admin accessible sur /workey/admin
☐ Designer accessible sur /workey/designer
☐ Premier Workflow Manager attribué dans /workey/admin
☐ URLs webhook et publication autorisées (si utilisées)
```

***

Pour aller plus loin :

* [Procédure d'Installation](/documentations/efalia-process/administration/administration-technique/procedure-installation.md)
* [Installation et Mise à Jour](/documentations/efalia-process/administration/administration-technique/installation-mise-a-jour.md)
* [Démarrage et Arrêt du Serveur](/documentations/efalia-process/administration/administration-technique/demarrage-arret-serveur.md)
* [Remarques et Limitations](/documentations/efalia-process/administration/administration-technique/remarques-limitations.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://documentation.efalia.com/documentations/efalia-process/administration/administration-technique/annexes-techniques.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
