Documentation

La base de connaisance complète sur ARender - Comment l’installer et le configurer pour répondre à vos besoins

Connecteur Filenet

Préambule

ARender 4.0 et supérieur utilise une API REST http pour communiquer avec le module de rendition.

Si votre serveur Websphere ne possède pas l’API JAX-RS 2.0, veuillez suivre cette procédure :

  • Désactivez le JAX-RS embarqué par la propriété JVM :

    com.ibm.websphere.jaxrs.server.DisableIBMJAXRSEngine=true.
    
    Note
    Vous pouvez placer cette propriété par la console d’Admin Web dans le chemin suivant: Servers>WebSphere Application Servers>yourServerName
  • Ensuite, dans la section Server Infrastructure :

    Java and Process Management > Process definition > Java Virtual Machine > Custom properties

    Placez le nom de la propriété à com.ibm.websphere.jaxrs.server.DisableIBMJAXRSEngine et sa valeur à true. La description reste à votre choix.

  • Enfin, lors du déploiement d’ARender dans Websphere, il sera recommandé de définir le war/ear en classLoader PARENT_LAST de la façon suivante:

    • Cliquez sur l’application ARender > Manage Modules > ARender war.

      Class loader order : Classes loaded with local class loader first (parent last).

    • Cliquez sur l’application ARender > Class loader.

      Class loader order : Classes loaded with local class loader first (parent last).

Une fois la configuration terminée, redémarrez votre serveur Websphere contenant ARender.

Les connecteurs

Des connecteurs pour les versions 4.x et 5.x de la solution de Gestion Électronique de Documents, FileNet P8, d’IBM. La configuration est cependant identique quelque soit la version concernée.

Paramètre Description
id Identifiant unique d’une version d’un document
vsId Identifiant d’une VersionSeries permettant de récupérer la dernière version d’un document
objectStoreName Nom de l’ObjectStore dans lequel est stocké le document
objectType Type du document à visualiser : document, folder, contentContainerXML, mixedObjects (facultatif dans le cas d’un document)
Exemple

Voici quelques exemples :

  • Ouverture d’un document simple stocké dans FileNet P8 :

    http://{arender_serveur}/ARender.html?id={345A81-KT7SK95747S-5IS8-8SK0}&objectStoreName=OS1

  • Ouverture de deux documents simultanément avec la syntaxe mixedObjects :

    http://{arender_serveur}/ARender.html?ids=doc:{345A81-KT7SK95747S-5IS8-8SK0},doc:{F64A9342-6114-4A5C-A5E1-589A2FFB159F}&objectStoreName=OS1&objectType=mixedObjects

  • Ouverture de deux documents et d’un folder simultanément :

    http://{arender_serveur}/ARender.html?objectStoreName=OS1&ids=doc:{3DBE573A-1AC9-4B08-8CB1-8F9495619954},doc:{F64A9342-6114-4A5C-A5E1-589A2FFB159F},folder:{55714817-BDAC-4C8A-9EFB-963E4620A4E4}&objectType=mixedObjects

Note
La syntaxe mixedObjects est la suivante : ids=[ [ “doc” | “folder” ] “:” [ Id du document ou Folder ] [ “,"] ]+

Définition du connecteur

Comme détaillé ci-dessous, un connecteur FileNet est composé de deux éléments. Le premier concerne l’accès à un ObjectStore et ses documents. Le deuxième est chargé de gérer la configuration des propriétés d’un document.

<bean id="fileNetUrlParser" class="com.arondor.viewer.filenetce.FileNetURLParser">
    <property name="objectStoreProvider">
        <ref bean="objectStoreProvider" />
    </property>
    <property name="documentPropertiesConfiguration">
        <ref bean="documentPropertiesConfiguration" />
    </property>
</bean>

Définition

Ajouter la ligne suivante à la propriété registeredURLParsers du bean servletDocumentService :

<ref bean="fileNetURLParser"/>

Configuration de l’accès aux documents

Selon le mode d’authentification choisi, deux types de fournisseur peuvent être utilisés pour fournir un accès aux documents.

Partage de la session FileNet

Dans la même JVM (ou à minima partage de contexte JAAS) en utilisant le protocole IIOP :

Paramètre Description
ceConnectionUri URI du Content Engine utilisant le protocol IIOP
<bean id="objectStoreProvider" class="com.arondor.viewer.filenetce.helper.impl.JaasObjectStoreProvider">
    <property name="ceConnectionUri" value="iiop://localhost:2809/FileNet/Engine"/>
</bean>

Compte de service

Dans le contraire, en utilisant les web services exposés :

Paramètre De scription
ceConnectionUri URI du Content Engine utilisant les WS exposés par le CE (MTOM ou DIME)
login Id entifiant du compte de service utilisé
password Mot de passe du compte de service utilisé

Exemple en HTTP
<bean id="objectStoreProvider" class="com.arondor.viewer.filenetce.helper.impl.LoginPasswordObjectStoreProvider">
    <property name="login" value="{p8_identifiant}"/>
    <property name="password" value="{p8_password}"/>
    <property name="ceConnectionUri" value="http://{serveur_content_engine}/wsi/FNCEWS40MTOM/"/>
</bean>
Exemple en IIOP
<bean id="objectStoreProvider" class="com.arondor.viewer.filenetce.helper.impl.LoginPasswordObjectStoreProvider">
    <property name="login" value="{p8_identifiant}"/>
    <property name="password" value="{p8_password}"/>
    <property name="ceConnectionUri" value="iiop://{serveur_content_engine}/FileNet/Engine"/>
    <property name="jaasStanza" value="FileNetP8" />
</bean>

Note
Ce deuxième type d’accès implique que l’utilisateur n’est pas authentifié au sein du serveur d’application. Une modification de fichier web.xml est donc nécessaire afin de désactiver les contraintes de sécurité définies par défaut.

Gestion du format de stockage des annotation

Stockage des annotations au format XML FileNet

Configuration par défaut, aucune configuration à faire.

Stockage des annotations au format XFDF

Ajouter simplement la ligne suivante dans le fichier suivant :

arender-server-custom-filenet.properties (Située dans WEB-INF\classes)
arender.server.default.annotation.accessor=xfdfAnnotationAccessor

Gestion des métadonnées à récupérer

<bean id="documentPropertiesConfiguration" class="com.arondor.viewer.filenetce.config.DocumentPropertiesConfiguration">
</bean>

Récupérer des métadonnées système

Par défaut, aucune métadonnée système n’est récupérée. Pour forcer la récupération d’une ou plusieurs, il faut ajouter/éditer la propriété includedSystemProperties.

<property name="includedSystemProperties">
    <list>
        <value>DateCreated</value>
        <value>DateLastModified</value>
        <value>Creator</value>
        <value>LastModifier</value>
    </list>
</property>

Exclure des métadonnées personnalisées

Par défaut, l’ensemble des métadonnées personnalisées sont récupérées et affichées. Pour forcer, l’exclusion d’une ou plusieurs, il faut ajouter/éditer la propriété excludedCustomProperties.

<property name="excludedCustomProperties">
    <list>
        <value>FactureRef</value>
    </list>
</property>
Note

Si l’erreur suivante apparaît : No LoginModules configured for FilenetP8WSI, une configuration WAS est nécessaire :

  • Déposer le fichier jaas.conf.WebSphere dans un dossier du serveur WAS

  • Ajouter un paramètre à la JVM ARender :

    • “Menu Server” puis “Gestion des processus et Java”; puis “définition des processus”; puis “Arguments de commande de démarrage” et ajouter la commande ci-dessous :

      -Djava.security.auth.login.config=[Chemin_vers_fichier_jaas.conf.WebSphere]

Depuis une interface graphique

IBM Workplace & Workplace XT

Pour définir quels types de documents doivent s’ouvrir avec ARender, il suffit d’éditer le fichier content-redir.properties (Pour la Workplace XT, situé par défaut dans le dossier : C:Program FilesFileNetConfigWebClient) :

    {mimeType}=/../ARender/ARender.html?{JSP_QUERY_STRING}

IBM Content Navigator

Un plugin spécifique a été développé pour permettre l’intégration d’ARender avec ICN.

Le connecteur ICN est basé sur la syntaxe mixedObjects cité ci-dessus.
  1. Se connecter au Content Navigator.

  2. Aller dans la vue “Administration” et cliquer sur “Plug-ins”. image

  3. Cliquer sur “Nouveau Plug-in”. image

  4. Entrer le chemin et nom du JAR et cliquer sur “Charger”.(Example : C:\sources\ARenderHMI\arondor-arender-navigator-plugin-2.2.1.jar) image

  5. Dans le champ ARender context root entrer l’adresse (host + port + context root) de ARender. Cf. exemple ci-dessous : image Si vous souhaitez que le plugin ICN détecte l’hôte de la machine avant de l’envoyer au poste client, utilisez le mot clé --arender.hostname-- dans la configuration. Cela remplacera la balise automatiquement.

  6. La liste des propriétés définies dans la classe ARenderPlugin est automatiquement chargée dans l’interface, cliquer sur “Sauvegarder”.

  7. Cliquer sur “Éditer” et vérifier que le plug-in a été correctement installé. image

  8. Mapping du nouveau viewer. Aller dans l’onglet “Mappes d’afficheur”. image

  9. La mappe par défaut s’appelle “Mappe de l’afficheur par défaut” et n’est pas modifiable, cliquer dessus et cliquer sur “Copier”. image

  10. Cliquer sur “Nouveau mappage” et sélectionner le nouveau viewer qui apparaît dans la liste des afficheurs disponibles. image

  11. Vous pouvez alors choisir dans la liste des types mimes supportés. image

  12. Pour utiliser cette mappe d’afficheur, il suffit de l’associer à un bureau (dans l’onglet général de définition du bureau, Mappe d’afficheur). image

Fonctionnalités avancées

Découpage de document avec fusion des métadonnées avancées

Description et configuration de la fonctionnalité

Voici en premier lieu un descriptif de la fonctionnalité. Pour chaque document source (FileNet) utilisé dans la composition du Document Builder :

  • Si tous les documents partagent une même métadonnée, avec une même valeur
    • La métadonnée et sa valeur sont propagées
  • Si la métadonnée est commune aux documents, mais les valeurs sont différentes
    • La métadonnée est propagée, mais la valeur est remise à zéro :
      • Les champs type String recevront une chaine vide
      • Les champs type Entiers/Double recevront 0
      • Les champs type Date sont remis à la date de l’opération de Document Builder
      • Les champs type Boolean sont à false
      • Les champs à cardinalité Liste seront quand à eux peuplés d’une liste d’une seule valeur du type correspondant (liste vide non supportée par l’Engine)
  • Si la métadonnée est unique à un seul document
    • Par défaut non propagée, elle pourra être propagée si la configuration l’autorise, par son SymbolicName

Pour propager une métadonnée unique à un document, voici la propriété où les différents SymbolicNames à autoriser sera à indiquer (séparés par des virgules)

arender.server.filenet.document.builder.update.first.document.properties.advanced.updater.propagation.symbolic.names

Comment activer la fusion avancée des métadonnées

A la création de nouveau documents, pour activer cette fonctionnalité, il faudra modifier la propriété suivante :

arender.server.filenet.document.builder.update.first.document.properties.copy.bean.name

Les deux valeurs possibles sont legacyFileNetPropertiesCopy pour ne pas activer la fusion des métadonnées avancées, ou advancedFileNetPropertiesMerger pour l’activer. Enfin, pour activer le comportement de fusion avancée de métadonnée lors d’une mise à jour du contenu d’un document (et non uniquement à la création), il suffit d’ajouter le bean suivant à la configuration:

arender-custom-server-integration.xml

    <bean id="filenetDocumentUpdaterNewVersion"
          class="com.arondor.viewer.filenetce.helper.impl.FileNetDocumentUpdaterNewVersion">
        <property name="fileNetPropertiesUpdater"
                  ref="${arender.server.filenet.document.builder.update.first.document.properties.copy.bean.name}"/>
    </bean>

Ainsi le bean de mise à jour de document suivra aussi le même comportement que le bean de création de documents (par défaut, ce bean ne possède pas de propertyUpdater, afin de garder son comportement historique).

Interdire la sauvegarde de documents en fonction des IDs d’objectStore

Afin de pouvoir interdire la création de nouveaux documents à partir de certains objectStore FileNet, il est possible de bloquer la fonctionnalité directement dans le code connecteur.

Pour ce faire, modifiez la propriété serveur HMI nommée :

arender.server.filenet.document.builder.unauthorized.object.store.ids=

Et insérez, séparés par des virgules, la liste des IDs FileNet des objectStores qui n’autoriseront pas la sauvegarde de nouveaux documents via le Document Builder.

Par défaut, cette liste est livrée vide pour garder le comportement historique.

Configuration de l’affichage des filligranes

Vous avez la possibilité de configurer l’affichage des filligranes selon le groupe utilisateur et/ou la classe filenet du document ouvert.

Pour l’activation du paramétrage par groupe et/ou par classe de document, il vous faudra rajouter cette propriété :

arender-server-custom-filenet.properties (Située dans WEB-INF\classes)
arender.server.watermark.display.provider=fileNetDisplayWatermarkProvider

Pour afficher le filligrane pour les utilisateurs appartenant à certains groupes :

arender-server-custom-filenet.properties (Située dans WEB-INF\classes)
#Valeurs séparées par des virgules qui indique quelle groupe Filenet doit avoir un filligrane définis dans arender.watermark.bean.name
arender.server.watermark.filenet.group.with=

Pour ne pas afficher le filligrane pour les utilisateurs appartenant à certains groupes :

arender-server-custom-filenet.properties (Située dans WEB-INF\classes)
#Valeurs séparées par des virgules qui indique quelle groupe Filenet ne doit pas avoir un filligrane définis dans arender.watermark.bean.name
arender.server.watermark.filenet.group.without=
Attention
Les deux propriétés ne peuvent être utilisés en même temps.

Vous pouvez également afficher selon la classe filenet du document :

arender-server-custom-filenet.properties (Située dans WEB-INF\classes)
#Valeurs séparées par des virgules qui indique quelle classe de document Filenet doit avoir un filligrane définis dans arender.watermark.bean.name
arender.server.watermark.filenet.document.class.with=