FAQ JCMS - Installation et configuration

Trouvez les réponses aux questions fréquemment posées sur l'installation et la configuration de JCMS.

Information

Retrouvez toutes ces réponses et bien d'autres encore dans notre Base de connaissances



1. Configurer JCMS avec Apache et Tomcat


2. Comment installer JCMS ?

Pour une installation détaillée reportez-vous au Manuel d’installation et d’exploitation.

Pour une installation rapide de JCMS sur Windows avec Tomcat, l'article Prise en main rapide de JCMS vous donne les lignes directrices sur la version 6.1. Vous pouvez aussi obtenir un demoPack ou un devPack selon vos habilitations.


3. Configurer JCMS avec un annuaire OpenLDAP


4. Configurer JCMS avec un SSO


5. Configurer JCMS avec un ReverseProxy

Un Reverse Proxy est un serveur http(s) qui reçoit des requêtes et les diffuse sur d'autres serveurs http. Ce type d'architecture permet de masquer les véritables serveurs aux clients http qui ne connaissent que le Reverse Proxy. Les architectures en Reverse Proxy sont typiquement utilisées pour sécuriser une grappe de serveur http, fournir une URL d'accès homogène à des services http hétérogènes ou encore faire de la répartition de charge.

JCMS doit être configuré explicitement pour fonctionner derrière un Reverse Proxy. En effet, il doit produire des les liens hypertextes et des redirections http pour l'URL du ReverseProxy au lieu de l'URL pour son propre serveur http.

Lorsque c'est possible, Jalios recommande l'utilisation d'un connecteur entre le serveur externe et le serveur d'application interne, les performances de ces connecteurs sont meilleurs que les reverse proxy et leurs configurations sont plus aisées.
Par exemple, utilisez le connecteur mod_jk pour le serveur Apache httpd et le serveur d'application Apache Tomcat. Plus d'informations à ce sujet dans l'article Configurer Apache, mod_jk et Tomcat pour JCMS.

Si vous utilisez un reverse proxy, assurez vous d'utiliser la toute dernière version de celui-ci. Par exemple, dans le cas d'Apache httpd, il est nécessaire d'utiliser la version 2.2 pour garantir un fonctionnement nominal.

Configurez les propriétés dans l'onglet "Proxy" de l'éditeur de propriétés :

  • Actif : cochez oui
  • Adresses IP du Rev. Proxy : la ou les adresses IP du Reverse Proxy séparées par des virgules. Seules les requêtes en provenance de ces adresses seront traitées en mode Reverse Proxy.
  • Chemin de contexte externe : C'est le chemin de contexte du site JCMS lorsqu'il est accédé depuis l'extérieur via le reverse proxy. Attention, jamais de "/" terminal. Par exemple, "" pour un site à la racine, "/intranet" pour un site accessible sous le chemin "/intranet".
  • URL de base externe : L'URL de base du site JCMS lorsqu'il est accédé depuis l'extérieur via le reverse proxy.
    Il s'agit de l'URL permettant d'accéder à la racine du site JCMS. Cette URL inclus donc le chemin de contexte de la webapp, si la webapp n'est pas accessible sur le contexte racine.
    Cette URL peut être en HTTPS lorsque le site n'est accessible que via ce protocole.
    Attention, URL toujours terminée par un "/". Par exemple, "http://intranet.company.com/".
    Exemples valides :
  • URL de base SSL externe : L'URL de base sécurisé du site JCMS lorsqu'il est accédé depuis l'extérieur via le reverse proxy.
    Il s'agit de l'URL permettant d'accéder à la racine de l'applicatif JCMS lorsque le procotole HTTPS est utilisé. Cette URL inclus le chemin de contexte de la webapp, si la webapp n'est pas accessible sur le contexte racine.

    Attention, URL toujours terminée par un "/". Par exemple "https://intranet.company.com:443/".
    Exemples valides :

6. Configurer JCMS avec un serveur Proxy

Certaines fonctionnalités de JCMS, comme par exemple la Portlet RSS, effectuent des requêtes http, qui peuvent nécessiter de passer par le serveur Proxy de l'entreprise.

La configuration de ce proxy se fait dans la boîte "Proxy de sortie" de l'onglet "Proxy" de l'éditeur de propriétés :

  • Serveur: Indiquer l'adresse de serveur de proxy de sortie a utilisé.
  • Port: Indiquer le numéro de port du serveur de Proxy
  • Sauf pour: Les requêtes indiquer par ces adresses se feront en directe et ne passeront pas par le Proxy.
  • Compte: Login d'un compte sur le serveur de Proxy
  • Mot de Passe: Mot de passé associé au compte.

Si vous utiliser un cluster JCMS composé de plusieurs réplicas communiquant via le protocole JSync, ou si vous faîtes de l'import/export entre webapps, n'oubliez pas de remplir la propriété Sauf pour afin que ces requêtes ne passent pas par le proxy.


7. Configurer le répertoire temporaire

Dans plusieurs cas (génération des types, upload, déploiement, ...), JCMS créé des fichiers temporaires en utilisant la méthode File.createTempFile(). Par défaut, cette méthode utilise le répertoire temporaire de la plateforme d'accueil (p. ex. le répertoire /tmp sous Unix). Pour modifier cette valeur, il faut modifier la propriété système java.io.tmpdir. Ceci se fait dans le script de lancement du serveur d'application en positionnant la propriété au démarrage de la JVM via l'option -D :

-Djava.io.tmpdir=/mon/repertoire/temporaire/

Attention, si votre serveur d'application est démarré en mode sécurisé, vous devez ajouter une permission en lecture/écriture sur cette propriété.

Cependant, avec Tomcat, cela ne suffit pas, il faut positionner la variable CATALINA_TMPDIR. Par exemple, sous Windows :

set CATALINA_TMPDIR=g:\tmp


8. Configurer la réplication avec JSync

Consultez l'article Mise en oeuvre d'un site JCMS à haute disponibilité avec le protocole de réplication JSync pour une introduction à JSync et la configuration dans l'environnement Tomcat/Apache.

Pour une configuration dans l'environnement BEA Weblogic, consultez l'article Mise en oeuvre d’un site JCMS à haute disponibilité avec BEA Weblogic.


9. Configurer les permissions (quotas) sur les téléchargements (dépôts)

JCMS 4.1.1 intègre un mécanisme permettant de définir des quotas sur le type et la taille des documents uploadés. Ce paramétrage se fait via les propriétés upload.permission.*= situées dans le fichier =WEB-INF/data/custom.prop.

La propriété upload.permission.size.default permet de définir la taille maximum (en octet) des fichiers uploadés.

Les propriétés upload.permission.size.type/mime permettent de définir la taille maximum des fichiers d'un certain type.

Attention, certains type de documents peuvent être décrits par plusieurs types mimes (p. ex. application/vnd.ms-powserpoint ou application/powerpoint). Le type mime à utiliser en suffixe des propriétés upload.permission.size.<i>type/mime</i> est celui utilisé par JCMS. La liste des types mime utilisés par JCMS est décrit dans le fichier WEB-INF/jalios/jcms.prop, dans les propriété =file-document.type.*=

Exemples :

# Limite la taille maximum de tous les upload à 1 Mo (1024*1024 = 1048576)
upload.permission.size.default : 1048576

# Limite la taille maximum de toutes les images à environs 2 Mo
upload.permission.size.image : 2000000

# Limite la taille maximum des images GIF à environs 100 Ko
upload.permission.size.image/gif : 100000


# Interdit les videos
upload.permission.size.video : 0

Pour restreindre les fichiers qui peuvent être uploadés à un jeu limité de types de document, il suffit de définir la taille maximum par défaut à 0 et de préciser les types de documents autorisés.

Exemples :

# Par défaut, tous les fichiers sont interdits à l'upload
upload.permission.size.default : 0

# Sauf les images de moins de 1 Mo
upload.permission.size.image : 1000000

# Et les documents MS-Office de moins de 10 Mo
upload.permission.size.application/msword : 10000000
upload.permission.size.application/vnd.ms-excel : 10000000
upload.permission.size.application/vnd.ms-powerpoint : 10000000

10. Configurer l'import/export entre webapps JCMS


11. Authentification avec un annuaire LDAP non sensible à la casse ou à la diacritique (p. ex. ActiveDirectory)

Certains annuaires LDAP ne sont pas sensibles à la casse du login pour les authentifications. Or, par défaut, JCMS est sensible à la casse. Si une personne s'authentifie une première fois avec son login en minuscule puis une seconde fois avec son login en majuscule, JCMS créera deux comptes distincts. Pour éviter cela, allez dans Espace d'administration>Editeur de propriétés>Accès, passez l'option Sensibilité de la Casse à non.

Certains annuaires LDAP ne sont pas sensible à la diacritique, c'est à dire aux accents. A partir de JCMS 8.0.2 une propriété Sensibilité de la Diacritique a été ajouté pour résoudre ce problème comme pour la casse.


12. Prise en compte de nouveaux formats de fichiers

JCMS est configuré pour reconnaître les principaux des formats de fichiers (doc, xls, ppt, pdf, jpg, gif, …) L’ajouter un format non supporté nativement par JCMS, se fait dans la déclaration des propriétés. Par exemple, si vous souhaitez ajouter le support des fichiers Flash Video (d’extension .flv), voici la procédure à suivre :

1. Editez le fichier WEB-INF/data/webapp.prop et ajoutez les lignes suivantes :

file-document.ext.flv:                   video/x-flv
file-document.icon.video/x-flv:          images/custom/files/flv.gif
en.file-document.typeinfo.video/x-flv:   Flash Video File
fr.file-document.typeinfo.video/x-flv:   Fichier Flash Video

2. Déposez, ensuite, l’icône correspondant à ce type fichier, flv.gif, dans le répertoire images/custom/files/ (de dimension 16x16 pixels).

3. Enfin, n’oubliez pas de configurer votre serveur d’application pour qu’il retourne le bon mime-type pour ce type de fichier. La configuration est propre à chaque serveur d’application. Par exemple, dans Tomcat, il faut déclarer dans le fichier TOMCAT_DIR/conf/web.xml :

<mime-mapping>
  <extension>flv</extension>
  <mime-type>video/x-flv</mime-type>
</mime-mapping>

13. Certains types de document MS-Office, n'apparaissent correctement pas dans le navigateur.

Si le navigateur propose de sauvegarder le document plutôt que de l'afficher, le problème est très certainement lié à une configuration du serveur d'application ou du serveur Web. Il faut ajouter l'association extension de fichier / type mime correspondant dans la configuration du serveur.

A titre d'exemple, Tomcat 4.1.30 est livré sans le support du typage des documents PowerPoint. Pour prendre en compte ces fichiers, il suffit d'ajouter l'association extension de fichier / type mime dans le fichier TOMCAT_DIR/conf/web.xml :

<mime-mapping>
    <extension>ppt</extension>
    <mime-type>application/vnd.ms-powerpoint</mime-type>
</mime-mapping>

Autre exemple, Internet Explorer 7+ peut interpréter les fichiers PowerPoint Slide Show (.pps) comme des fichiers PowerPoint (.ppt) pour contourner ce problème il convient de rajouter la déclaration suivante:

<mime-mapping>
    <extension>pps</extension>
    <mime-type>application/vnd.ms-pps</mime-type>
</mime-mapping>

Pour connaître le type mime du document, il vous suffit de consulter le champ "Type de contenu" du document JCMS.

Information

Dans la majorité des cas, pour corriger votre problème vous pouvez mettre à jour globalement : JCMS + Java + Serveur d'application.


14. Configurer l'accès WebDAV

Consultez l'article JCMS 5.5 : Accès WebDAV.


15. Comment installer un add-pack ?

Un add-pack permet de définir les limites de JCMS (espaces, membres, langues, ...). Il peut aussi contenir une date d'expiration.

Pour obtenir un add-pack, il vous suffit d'appeler votre contact commercial chez Jalios en lui indiquant votre besoin. Précisez :

  • Votre add-pack actuel (le cas échéant)
  • Votre version de JCMS
  • Le nom du site (celui défini par la propriété channel.name)
  • Le nombre d'espaces de travail souhaité
  • Le nombre d'espaces collaboratif souhaité
  • Le nombre de membres souhaité
  • Le nombre de membres en base de données souhaité
  • Le nombre de documents en base de données souhaité
  • Le nombre de langues souhaité

En retour nous vous fournirons une clé d'activation se présentant sous la forme d'une propriété (channel.add-pack) à ajouter dans le fichier WEB-INF/data/custom.prop de votre application JCMS.


16. Comment avoir accès facilement aux tables de JCMS sous Eclipse ?

Utiliser le plugin d'eclipse QuantumDB.

Installation :
http://quantum.sourceforge.net/how_to_install.html

Configuration (valable pour Derby) :

  • Dans Eclipse, passer dans la vue Quantum DB
  • Dans la fenête Database Bookmarks, cliquer sur l’icône +
  • Cliquer sur Add driver
  • Cliquer sur Add external Jar : sélectionner MyJcmsSite/WEB-INF/lib/derbyclient.jar
  • En face de Class Name, cliquer sur Browse et sélectionner org.apache.derby.jdbc.ClientDriver
  • Type : choisir Generic JDBC
  • Cliquer sur Finish
  • Sélectionner dans la liste le driver que vous venez de créer et cliquer sur Next
  • Remplir les champs :
    • UserId : user
    • PassWord : user
    • JDBC URL : jdbc:derby://localhost:1527/jcmsdb;create=true;
    • Puis Finish
  • Modifier dans custom.prop : derby.port: 1527
  • Redémarrer

Utilisation :

  • Dans la fenêtre Database Bookmarks, double cliquer sur votre nouvelle base
  • Aller dans APP --> Table : ce sont les tables de JCMS.
  • Double cliquer sur une table pour visualiser son contenu