Arborescence des pages

Vous regardez une version antérieure (v. /wiki/pages/viewpage.action?pageId=121667591) de cette page.

afficher les différences afficher l'historique de la page

« Afficher la version précédente Vous regardez la version actuelle de cette page. (v. 7) afficher la version suivante »

Note d'installation pour l'intégration de Esup 3.2.4 et de Grouper via le GroupStore dans le trunk du projet UPortal.

Pour le moment cela s'apparente plus à un hack :)

Etape 1 : Récupération des librairies

J'ai globalement suivi les instructions de Chris Hyzer pour pouvoir juste compiler le projet

Récupération du trunk uPortal : svn co https://source.jasig.org/uPortal/trunk

modification de grouper.client.properties

modification de compositeGroupServices.xml

mvn install

Je mets à disposition un zip avec tous les fichiers compiler avec une JDK 1.6

Etape 2 : copie des sources vers Esup 3.2.4

Le code du groupStore de gouper

mkdir -p <customDir>/uPortal/uportal-impl/src/main/java/org/jasig/portal/groups/grouper
cp <uportalSrc>/uportal-war/src/main/java/org/jasig/portal/groups/grouper/*.java <customDir>/uPortal/uportal-impl/src/main/java/org/jasig/portal/groups/grouper

Les dépendances pour le client grouper

Pour la compilation

cp <esupSrc>/uPortal_rel-3.2.4/uportal-impl/pom.xml <customDir>/uPortal/uportal-impl/

Edition du fichier pom.xml pour ajouter

vim <customDir>/uPortal/uportal-impl/pom.xml

ajouter les lignes suivantes

        <dependency>
            <groupId>edu.internet2.middleware.grouper</groupId>
            <artifactId>grouperClient</artifactId>
        </dependency>

juste après la dépendance dom4j par exemple.

pour le repository du client grouper.

cp <esupSrc>/uPortal_rel-3.2.4/pom.xml <customDir>/uPortalajouter la ligne suivante

ajouter la ligne suivante

<grouperClient.version>1.6.3</grouperClient.version>

juste avant <hibernate.version> dans le groupe des dépendances de version.

ajouter les lignes suivantes

  <dependency>
      <groupId>edu.internet2.middleware.grouper</groupId>

      <artifactId>grouperClient</artifactId>       <version>$

Unknown macro: {grouperClient.version}

</version>
            </dependency>

Le seul fichier à modifier est grouper.client.properties qui contient l'url et le compte d'accès au web service de Grouper.

Ensuite copie des fichiers :

  • grouperClients-1.6.3.jar -> webapps/uPortal/WEB-INF/lib
  • le répertoire grouper -> webapps/uPortal/WEB-INF/classes/org/jasig/portal/groups
  • grouper.client.properties -> webapps/uPortal/WEB-INF/classes
  • compositeGroupServices.xml -> webapps/uPortal/WEB-INF/classes/properties/groups

Comme le fichier grouper.client.properties et les librairies n'existent pas dans les sources, ils ne sont pas écrasés à chaque déploiement. Pour ne pas perdre le fichier compositeGroupServices.xml à chauqe déploiement, il suffit de la mettre dans <répertoire d'installation>/custom/uPortal/uportal-impl/src/main/resources/properties/groups

Etape 3 : Patch du gestionnaire  de groupes d'uPortal

L'utilisation de : comme séparateur dans le nommage des groupes dans Grouper pose un problème au gestionnaire groupes d' uPortal. Ce problème a déjà été reporté dans le Jira de uPortal (merci à Julien Gribonvald pour l'information) et Bill Brown a déjà proposé un patch https://issues.jasig.org/secure/attachment/11917/rel-3-2-patches.patch.

Pour ce faire, j'ai tout simplement modifié le fichier source de uPortal avec les différences décrites dans le fichier patch.

Une fois les modifications faîtes, retour dans le réperrtoire d'installation de esup et le classique : ant init deploy

Etape 3 : transfert des librairies vers  votre Esup 3.2.4

Pour que Grouper soit pris en compte par le portail, il faut encore y transférer les librairies pour Grouper. Dans cette première approche très brouillone, je copie directement les librairies dans la webapp uPortal en partant des fichiers obtenus à l'étape 1 ou le zip.

Le seul fichier à modifier est grouper.client.properties qui contient l'url et le compte d'accès au web service de Grouper.

Ensuite copie des fichiers :

  • grouperClients-1.6.3.jar -> webapps/uPortal/WEB-INF/lib
  • le répertoire grouper -> webapps/uPortal/WEB-INF/classes/org/jasig/portal/groups
  • grouper.client.properties -> webapps/uPortal/WEB-INF/classes
  • compositeGroupServices.xml -> webapps/uPortal/WEB-INF/classes/properties/groups

Comme le fichier grouper.client.properties et les librairies n'existent pas dans les sources, ils ne sont pas écrasés à chaque déploiement. Pour ne pas perdre le fichier compositeGroupServices.xml à chauqe déploiement, il suffit de la mettre dans <répertoire d'installation>/custom/uPortal/uportal-impl/src/main/resources/properties/groups

Bien entendu, il faut redémarrer le portail.

  • Aucune étiquette