Le projet Apache Chemistry fournit une application java servant de démo à l’utilisation de CMIS. Cette application n’est pas facilement utilisable mais elle rend beaucoup de services pour tester des requêtes CMIS, consulter le modèle de données, consulter les métadonnées précises comme on peut le faire avec le navigateur de noeud Alfresco.

On peut également manipuler les données sur le serveur, créer ou supprimer du contenu et pour les plus sportifs exécuter des scripts groovy !

Seule contrainte qui rend le workbench lourd à utiliser, on est obligé de saisir l’url de connexion et les identifiants à chaque connexion. Pourtant les développeurs ont prévu un mécanisme de configuration très simple.

Installation du workbench

  • Télécharger et décompresser l’archive.
wget -o ~/opencmis-workbench.zip http://www.apache.org/dyn/closer.cgi/chemistry/opencmis/0.13.0/chemistry-opencmis-workbench-0.13.0-full.zip
mkdir ~/opencmis-workbench
cd $_
unzip ~/opencmis-workbench.zip
  • Modifier le script de démarrage du workbench, avant la dernière ligne exec $JAVA $JAVA_OPTS ... ajouter une ligne pour cibler un fichier de configuration.

vim ~/opencmis-workbench/workbench.sh

JAVA_OPTS="$JAVA_PROXY_CONF"

JAVA_OPTS="$JAVA_OPTS -Dcmis.workbench.configs=${HOME}/.opencmis/configs/config-library.properties"

exec $JAVA $JAVA_OPTS $CUSTOM_JAVA_OPTS -classpath $WCP org.apache.chemistry.opencmis.workbench.Workbench &

Configurations personnelles

  • Le fichier ciblé doit répertorier chaque fichier de configuration serveur
mkdir -p ~/.opencmis/configs

echo "serveur-local.properties=Serveur Alfresco Local" > ~/.opencmis/configs/config-library.properties

vim ~/.opencmis/configs/serveur-local.properties

org.apache.chemistry.opencmis.binding.spi.type=atompub
org.apache.chemistry.opencmis.binding.atompub.url=https://localhost:8080/alfresco/cmisatom
org.apache.chemistry.opencmis.user=admin
org.apache.chemistry.opencmis.password=admin
  • Vous pouvez ajouter un nouveau fichier pour chaque serveur
echo "serveur-recette.properties=Serveur de Recette" >> ~/.opencmis/configs/config-library.properties

vim ~/.opencmis/configs/serveur-recette.properties

org.apache.chemistry.opencmis.binding.spi.type=atompub
org.apache.chemistry.opencmis.binding.atompub.url=https://serveur-recette/alfresco/cmisatom
org.apache.chemistry.opencmis.user=user
org.apache.chemistry.opencmis.password=mdp
org.apache.chemistry.opencmis.binding.auth.soap.usernametoken=true
org.apache.chemistry.opencmis.binding.auth.http.basic=true
org.apache.chemistry.opencmis.binding.auth.http.oauth.bearer=false
org.apache.chemistry.opencmis.binding.compression=true
org.apache.chemistry.opencmis.binding.clientcompression=false
org.apache.chemistry.opencmis.binding.cookies=true
cmis.workbench.acceptSelfSignedCertificates=true

Connexions

  • Enfin démarrer le workbench (./workbench.sh) , vous verrez que la fenêtre de login a deux onglets. Sur l’onglet expert, la liste déroulante contient maintenant nos fichiers de configuration.

image article-workbench Capture01

  • Sélectionner votre serveur puis cliquer sur le bouton Load Repositories pour tester la connexion.
  • Ce menu est présent en standard avec des exemples de paramétrages pour chaque type de serveur possible (Alfresco, Nuxeo, SharePoint, ext..). Pour retrouver ces fichiers d’exemples regarder dans le code source du workbench ou directement dans les jars :
cd ~/opencmis-workbench
jar xf lib/chemistry-opencmis-workbench-0.13.0.jar configs
cp configs/* ~/.opencmis/configs/

Scripts Groovy

De la même façon vous pouvez définir vos propres scripts groovy.

  • Modifier le script de démarrage :

vim ~/opencmis-workbench/workbench.sh

JAVA_OPTS="$JAVA_PROXY_CONF"

JAVA_OPTS="$JAVA_OPTS -Dcmis.workbench.configs=${HOME}/.opencmis/configs/config-library.properties"
JAVA_OPTS="$JAVA_OPTS -Dcmis.workbench.scripts=${HOME}/.opencmis/scripts/script-library.properties"

exec $JAVA $JAVA_OPTS $CUSTOM_JAVA_OPTS -classpath $WCP org.apache.chemistry.opencmis.workbench.Workbench &
  • puis
cd ~/opencmis-workbench
jar xf lib/chemistry-opencmis-workbench-0.13.0.jar scripts
cp -r scripts/ ~/.opencmis/