Installation du Bureau Virtuel

 

Prérequis

Procédure d'installation

Nous nous sommes basés sur la version 2.3.5 du socle de uPortal en apportant des modifications mineures. Le reste des fonctionnalités (forum, communautés, classeurs, etc.) ont été développées dans des modules séparés. Il suffit de télécharger les différents fichiers proposés, de les décompresser au même niveau, et de suivre la procédure d'installation. Quelques modifications mineures seront exigées pour s'adapter à votre environnement.

  1. Installation du socle uPortal
    1. Télécharger le fichier uportal-2.3.5.zip ou uportal-2.3.5.tar.gz et décompresser dans un répertoire appelé uportal2_3_5
      - # cd uportal2_3_5
    2. Certaines bases de données de la distribution utilisent des procédure stockées, il faut s'assurer que le langage plpgsql est installé pour ces bd. Pour ce faire, il suffit de l'installer pour template1 :
      # createlang plpgsql template1
    3. Création de la base de données uportal
      - Créer l'usager uportal et la bd uportal en exécutant les commandes suivantes sous l'usager postgres :
      # createuser uportal
      # createdb -E LATIN1 -U uportal uportal
      - Créer la structure de la bd uportal et de l'initialiser avec les données nécessaires au démarrage du portail
      # ant initportal
      - Attention, si dans ./properties/portal.properties la valeur de org.jasig.portal.RDBMServices.getDatasourceFromJndi=true, initportal ne fonctionne pas. Il faut la remettre à false.
      - Attention, si vous avez déjà fait initportal avant des tables de certaines channels ne sont pas initialisées. Il faut les supprimer si on veut les recréer ou au moins supprimer leur contenu si on veut les réutiliser. Il s'agit des tables pwdstore_param, ubcwebmail_filter, ubcwebmail_prefs, et ubcwebmail_server_config.
    4. Préparation du socle pour la compilation et le déploiement
      - Modifier le fichier properties/rdbm.properties en spécifiant les paramètres d'accès à la base de données uportal.
      - Modifier le fichier properties/ldap.properties qui permet au portail d'utiliser LDAP pour authentifier les utilisateurs.
      Pour accéder à LDAP en mode ssl, il faut activer la directive ldap.protocol=ssl dans ldap.properties, utiliser le port sécurisé (636 par défaut), et installer le certificat ssl du serveur LDAP pour qu'elle soit accessible au serveur d'application (voir comment utiliser l'utilitaire keytool de Java).
      - Modfier le fichier properties/PersonDirs.xml en spécifiant les paramètres d'accès à LDAP et les correspandances des attributs LDAP avec leurs alias dans uPortal. Ceci permet au portail d'accéder aux attributs LDAP d'une façon standard.
      - Modifier le fichier properties/groups/PAGSGroupStoreConfig.xml en définissant les groups LDAP qui seront accessibles par le portail.
      - Modifier le fichier properties/groups/LDAPGroupStoreConfig.xml en spécifiant les paramètres d'accès à LDAP sans définir des groupes. Ce service va être utilisé seulement pour effectuer la recherche dans LDAP. Les groupes sont gérés par le service pags.
      - Si vous voulez utiliser le channel UBC_Webmail (voir III.10), il faut spécifier les paramètres d'accès au serveur de courrier(smtphost, domain, host) qui vont être utilisés par ce channel au moment de son déploiement. Si le courriel est compatible ldap, il faut aussi ajouter la propriété suivante à la publication de ce channel :
      AuthenticationFactory = ca.ubc.itservices.channels.webmail.CachedCredentialsAuthenticationFactory
      Ces paramètres sont définis dans le fichier properties/chanpub/echangeUBCWebMail.xml
      - Modifier le fichier build.properties en spécifiant une valeur pour le paramètre server.home (ici /usr/local/tomcat). Il s'agit du répertoire dans lequel Tomcat est installé.
      - # ant compile
    5. Modifier la ligne suivante dans fichier ./properties/portal.properties
      org.jasig.portal.RDBMServices.getDatasourceFromJndi=true
      Ceci permet au portail d'utiliser JNDI pour récupérer les sources de données définies au niveau du serveur d'application (voir I.7) .
    6. Génération du jar et déploiement
      - # ant dist
    7. Copie des jar(s) nécessaires pour Tomcat
      - Copier le driver lib/pg74.213.jdbc3.jar dans /usr/local/tomcat/common/lib
      - Remplacer les librairies du parseur XML qui viennent par défaut avec Tomcat en copiant les deux fichiers lib/xercesImpl.jar et lib/xml-apis.jar de uportal dans /usr/local/tomcat/common/endorsed. S'il y a déjà des librairies du parseur XML dans le répertoire endorsed, il faut les supprimer..
    8. Configuration au niveau de Tomcat
      - Plus de détails sur Tomcat sur le site web de Jakarta :
      a. Sources de données JNDI : http://jakarta.apache.org/tomcat/tomcat-4.1-doc/jndi-datasource-examples-howto.html
      b. Application web manager qui vient avec Tomcat pour l'administration des applications web (déploiement, arrêt, redémarrage, etc.) : http://jakarta.apache.org/tomcat/tomcat-4.1-doc/html-manager-howto.html
      c. Application web admin qui vient avec Tomcat pour son administration via des interfaces web.
      - Faire activer l'usager tomcat avec les rôles manager et admin dans le fichier conf/tomcat-users.xml
      - Créer les sources de données dans le fichier conf/server.xml de Tomcat afin de permettre au portail l'accès aux bases de données. Exemple :
      * Ajouter dans la section GlobalNamingResources de server.xml :

      <GlobalNamingResources>

      <Resource name="jdbc/PortalDb" auth="Container" type="javax.sql.DataSource"/>
      <Resource name="jdbc/cPortalDb" auth="Container" type="javax.sql.DataSource"/>
      <Resource name="jdbc/agenda" auth="Container" type="javax.sql.DataSource"/>
      <Resource name="jdbc/bdcs" auth="Container" type="javax.sql.DataSource"/>

      <ResourceParams name="jdbc/PortalDb">
      <parameter>
      <name>factory</name>
      <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
      </parameter>
      <!-- Maximum number of db connections in pool. Set to 0 for no limit.-->
      <parameter>
      <name>maxActive</name>
      <value>100</value>
      </parameter>
      <!-- Maximum number of idle db connections to retain in pool. Set to 0 for no limit.-->
      <parameter>
      <name>maxIdle</name>
      <value>30</value>
      </parameter>
      <!-- Maximum time to wait for a db connection to become available
      in ms, in this example 10 seconds. An Exception is thrown if
      this timeout is exceeded. Set to -1 to wait indefinitely.
      -->
      <parameter>
      <name>maxWait</name>
      <value>10000</value>
      </parameter>
      <!-- Portal db username and password for db connections -->
      <parameter>
      <name>username</name>
      <value>uportal</value>
      </parameter>
      <parameter>
      <name>password</name>
      <value>uportal</value>
      </parameter>
      <!-- Class name JDBC driver -->
      <parameter>
      <name>driverClassName</name>
      <value>org.postgresql.Driver</value>
      </parameter>
      <!-- The JDBC connection url for connecting to your Portal db.-->
      <parameter>
      <name>url</name>
      <value>jdbc:postgresql://localhost/uportal</value>
      </parameter>
      </ResourceParams>

      <ResourceParams name="jdbc/cPortalDb">
      <parameter>
      <name>url</name>
      <value>jdbc:postgresql://localhost/cuportal</value>
      </parameter>
      <parameter>
      <name>username</name>
      <value>uportal</value>
      </parameter>
      <parameter>
      <name>password</name>
      <value>uportal</value>
      </parameter>
      <parameter>
      <name>maxActive</name>
      <value>4</value>
      </parameter>
      <parameter>
      <name>maxWait</name>
      <value>5000</value>
      </parameter>
      <parameter>
      <name>driverClassName</name>
      <value>org.postgresql.Driver</value>
      </parameter>
      <parameter>
      <name>maxIdle</name>
      <value>2</value>
      </parameter>
      </ResourceParams>

      <ResourceParams name="jdbc/agenda">
      <parameter>
      <name>factory</name>
      <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
      </parameter>
      <!-- Maximum number of db connections in pool. Set to 0 for no limit.-->
      <parameter>
      <name>maxActive</name>
      <value>100</value>
      </parameter>
      <!-- Maximum number of idle db connections to retain in pool. Set to 0 for no limit.-->
      <parameter>
      <name>maxIdle</name>
      <value>30</value>
      </parameter>
      <!-- Maximum time to wait for a db connection to become available
      in ms, in this example 10 seconds. An Exception is thrown if
      this timeout is exceeded. Set to -1 to wait indefinitely.
      -->
      <parameter>
      <name>maxWait</name>
      <value>10000</value>
      </parameter>
      <!-- Portal db username and password for db connections -->
      <parameter>
      <name>username</name>
      <value>uportal</value>
      </parameter>
      <parameter>
      <name>password</name>
      <value>uportal</value>
      </parameter>
      <!-- Class name JDBC driver -->
      <parameter>
      <name>driverClassName</name>
      <value>org.postgresql.Driver</value>
      </parameter>
      <!-- The JDBC connection url for connecting to your agenda db.-->
      <parameter>
      <name>url</name>
      <value>jdbc:postgresql://localhost/agenda</value>
      </parameter>
      </ResourceParams>

      <ResourceParams name="jdbc/bdcs">
      <parameter>
      <name>factory</name>
      <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
      </parameter>
      <!-- Maximum number of db connections in pool. Set to 0 for no limit.-->
      <parameter>
      <name>maxActive</name>
      <value>100</value>
      </parameter>
      <!-- Maximum number of idle db connections to retain in pool. Set to 0 for no limit.-->
      <parameter>
      <name>maxIdle</name>
      <value>30</value>
      </parameter>
      <!-- Maximum time to wait for a db connection to become available
      in ms, in this example 10 seconds. An Exception is thrown if
      this timeout is exceeded. Set to -1 to wait indefinitely.
      -->
      <parameter>
      <name>maxWait</name>
      <value>10000</value>
      </parameter>
      <!-- Portal db username and password for db connections -->
      <parameter>
      <name>username</name>
      <value>uportal</value>
      </parameter>
      <parameter>
      <name>password</name>
      <value>uportal</value>
      </parameter>
      <!-- Class name JDBC driver -->
      <parameter>
      <name>driverClassName</name>
      <value>org.postgresql.Driver</value>
      </parameter>
      <!-- The JDBC connection url for connecting to your agenda db.-->
      <parameter>
      <name>url</name>
      <value>jdbc:postgresql://localhost/cs</value>
      </parameter>
      </ResourceParams>

      </GlobalNamingResources>

      * Ajouter le contexte suivant dans server.xml :
      <Context path="/portail" docBase="portail" debug="0">
      <ResourceLink global="jdbc/PortalDb" name="jdbc/PortalDb" type="javax.sql.DataSource"/>
      <ResourceLink global="jdbc/cPortalDb" name="jdbc/cPortalDb" type="javax.sql.DataSource"/>
      <ResourceLink global="jdbc/agenda" name="jdbc/agenda" type="javax.sql.DataSource"/>
      <ResourceLink global="jdbc/bdcs" name="jdbc/bdcs" type="javax.sql.DataSource"/>
      </Context>
    9. Installation des ajouts/modifications au socle (modifications du code source du socle)
      - Télécharger le fichier uportal_ajouts-0.9.6.zip ou uportal_ajouts-0.9.6.tar.gz et le décompresser dans un répertoire appelé uportal_ajouts
      - # cd uportal_ajouts
      - Modifier le fichier build.properties en spécifiant une valeur pour le paramètre server.home (ici /usr/local/tomcat).
      - # ant compile
      - # ant deploy
      - Ce module permet d'avoir un service qui se connecte à la bd cs pour récupérer les groupes de cette bd. Pour l'activer, enlever ce qui en commentaitre dans le fichier uportal2_3_5/properties/groups/compositeGroupServices.xml concerant ce serice :
      <service>
      <name>bdcs</name>
      <service_factory>org.jasig.portal.groups.ReferenceIndividualGroupServiceFactory</service_factory> <entity_store_factory>ca.qc.cslaval.uportal.groups.bdcs.BDCSEntityStoreFactory</entity_store_factory> <group_store_factory>ca.qc.cslaval.uportal.groups.bdcs.BDCSGroupStoreFactory</group_store_factory>
      <entity_searcher_factory>ca.qc.cslaval.uportal.groups.bdcs.BDCSEntitySearcherFactory</entity_searcher_factory> <internally_managed>false</internally_managed>
      <caching_enabled>true</caching_enabled>
      </service>
  2. Installation des composantes nécessaires pour les channels
    1. Installation de la composante common (classes Java utilitaires utilisées par les channels)
      - Télécharger le fichier common-0.9.6.zip ou common-0.9.6.tar.gz et le décompresser dans un répertoire appelé common
      - # cd common
      - Modifier le fichier build.properties en spécifiant une valeur pour le paramètre server.home (ici /usr/local/tomcat).
      - # ant compile
      - # ant dist
    2. Installation de la composante cportaldb (couche de persistance pour la bd cuportal) et sa base de données (cuportal)
      - Télécharger le fichier cportaldb-0.9.6.zip ou cportaldb-0.9.6.tar.gz et le décompresser dans un répertoire appelé cportaldb
      - # cd cportaldb
      - Modifier le fichier build.properties en spécifiant une valeur pour le paramètre server.home (ici /usr/local/tomcat) et une valeur pour uportal.home qui pointe vers le répertoire contenant le socle uPortal (ici ../uportal2_3_5, voir I.2).
      - Créer la bd cuportal en exécutant la commande suivante sous l'usager postgres :
      # createdb -E LATIN1 -U uportal cuportal
      - Exécuter les commandes des scripts sql "./misc/db/cuportal-shema.sql" et "./misc/db/cuportal-data.sql" sous l'usager postgres :
      # psql -U uportal -f ./misc/db/cuportal-shema.sql cuportal
      # psql -U uportal -f ./misc/db/cuportal-data.sql cuportal
      - # ant compile
      - # ant dist
    3. Installation de la composante whiteboardapplet (applet pour visualiser le clavardage)
      - Télécharger le fichier whiteboardapplet-0.9.6.zip ou whiteboardapplet-0.9.6.tar.gz et le décompresser dans un répertoire appelé whiteboardapplet
      - # cd whiteboardapplet
      - Modifier le fichier build.properties en spécifiant une valeur pour le paramètre server.home (ici /usr/local/tomcat).
      - # ant compile
      - # ant dist
    4. Installation de la composante calculatrice (applet pour l'outil calculatrice)
      - Télécharger le fichier calculatrice-0.9.6.zip ou calculatrice-0.9.6.tar.gz et le décompresser dans un répertoire appelé calculatrice
      - # cd calculatrice
      - Modifier le fichier build.properties en spécifiant une valeur pour le paramètre server.home (ici /usr/local/tomcat).
      - # ant compile
      - # ant dist
    5. Installation de la composante geonext (applet pour l'outil geonext)
      - Télécharger le fichier geonext-0.9.6.zip ou geonext-0.9.6.tar.gz et le décompresser dans un répertoire appelé geonext
      - # cd geonext
      - Modifier le fichier build.properties en spécifiant une valeur pour le paramètre server.home (ici /usr/local/tomcat).
      - # ant deploy
  3. Installation des channels
    1. homepage
      - Télécharger le fichier homepage-0.9.6.zip ou homepage-0.9.6.tar.gz et le décompresser dans un répertoire appelé homepage
      - # cd homepage
      - Modifier le fichier build.properties en spécifiant une valeur pour le paramètre server.home (ici /usr/local/tomcat).
      - # ant compile
      - # ant dist
    2. bookmarks
      - Télécharger le fichier bookmarks-0.9.6.zip ou bookmarks-0.9.6.tar.gz et le décompresser dans un répertoire appelé bookmarks
      - # cd bookmarks
      - Modifier le fichier build.properties en spécifiant une valeur pour le paramètre server.home (ici /usr/local/tomcat), une valeur pour uportal.home, et une valeur pour common.home qui pointe vers le répertoire contenant la composante common (ici ../common, voir III.1).
      - # ant compile
      - # ant dist
    3. newsrendering
      - Télécharger le fichier newsrendering-0.9.6.zip ou newsrendering-0.9.6.tar.gz et le décompresser dans un répertoire appelé newsrendering
      - # cd newsrendering
      - Modifier le fichier build.properties en spécifiant une valeur pour le paramètre server.home et une valeur pour uportal.home.
      - # ant compile
      - # ant dist
    4. forum
      - Télécharger le fichier forum-0.9.6.zip ou forum-0.9.6.tar.gz et le décompresser dans un répertoire appelé forum
      - # cd forum
      - Modifier le fichier build.properties en spécifiant une valeur pour le paramètre server.home (ici /usr/local/tomcat), une valeur pour uportal.home, une valeur pour common.home, et une valeur pour cportaldb.home qui pointe vers le répertoire contenant la composante cportaldb (ici ../cportaldb, voir III.1).
      - Modifier le fichier ./properties/forum.properties en affectant à nbMessagesPerPage le nombre de messages que l'on veut voir affichés sur une même page, et à attachmentLocation le répertoire où les pièces jointes seront sauvegardées. Ce répertoire doit être ouvert en écriture. La variable validation doit être mise à jour. Il faut spécifier le serveur de courrier (host), ainsi que l'origine des courriels (from) .
      - # ant compile
      - # ant dist
    5. filemanager
      - Télécharger le fichier filemanager-0.9.6.zip ou filemanager-0.9.6.tar.gz et le décompresser dans un répertoire appelé filemanager
      - # cd filemanager
      - Modifier le fichier build.properties en spécifiant une valeur pour le paramètre server.home (ici /usr/local/tomcat), une valeur pour uportal.home, une valeur pour common.home, et une valeur pour cportaldb.home.
      - Configurer les différents systèmes de fichiers qui seront utilisés par ce channel dans le fichier properties/fileManagerExampleConfig.xml.
      - # ant compile
      - # ant dist
    6. agenda
      - Télécharger le fichier agenda-0.9.6.zip ou agenda-0.9.6.tar.gz et le décompresser dans un répertoire appelé agenda
      - # cd agenda
      - Modifier le fichier build.properties en spécifiant une valeur pour le paramètre server.home (ici /usr/local/tomcat), une valeur pour uportal.home, une valeur pour common.home et une valeur pour cportaldb.home.
      - Créer la bd agenda en exécutant les commandes suivantes sous l'usager postgres :
      # createdb -E LATIN1 -U uportal agenda
      - Exécuter les commandes des scripts sql sous l'usager postgres :
      # psql -U uportal -f ./misc/db/agenda-schema.sql agenda
      # psql -U uportal -f ./misc/db/agenda-data.sql agenda
      # psql -U uportal -f ./misc/db/triggers-keyword-index.sql agenda
      - Si on veut utiliser la bd cs, il faut configurer l'application web csadmin (voir IV)
      - Si l'application web csadmin est configurée, enlever les commentaire pour "ScheduleServices/Service name=bdcs" et "GroupServices/Service name=bdcs" dans le fichier properties/AgendaConfig.xml
      - Modifier le fichier properties/AgendaConfig.xml en configurant le répertoire racine pour les attachements de l'agenda (élment Attachments du document xml). Il faut créer ce répertoire avant de démarrer le portail et en avoir l'accès en mode écriture.
      - # ant compile
      - # ant dist
    7. whiteboard
      - Télécharger le fichier whiteboard-0.9.6.zip ou whiteboard-0.9.6.tar.gz et le décompresser dans un répertoire appelé whiteboard
      - # cd whiteboard
      - Modifier le fichier build.properties en spécifiant une valeur pour le paramètre server.home (ici /usr/local/tomcat), une valeur pour uportal.home, une valeur pour common.home, une valeur pour cportaldb.home, et une valeur pour whiteboardapplet.home qui pointe vers le répertoire de la composante whiteboardapplet (voir III.3)
      - # ant compile
      - # ant dist
    8. community
      - Télécharger le fichier community-0.9.6.zip ou community-0.9.6.tar.gz et le décompresser dans un répertoire appelé community
      - # cd community
      - Modifier le fichier build.properties en spécifiant une valeur pour le paramètre server.home (ici /usr/local/tomcat), une valeur pour uportal.home, une valeur pour common.home, une valeur pour cportaldb.home, une valeur pour forum.home, une valeur pour agenda.home, une valeur pour filemanager.home, une valeur pour bookmarks.home et une valeur pour whiteboard.home.
      - # ant compile
      - # ant dist
    9. pwdstore
      - Télécharger le fichier pwdstore-0.9.6.zip ou pwdstore-0.9.6.tar.gz et le décompresser dans un répertoire appelé pwdstore
      - # cd pwdstore
      - Modifier le fichier build.properties en spécifiant une valeur pour le paramètre server.home (ici /usr/local/tomcat) et une valeur pour uportal.home
      - # ant compile
      - # ant dist
      - Créer la table nécessaire (script misc/db/pwdstore.sql) pour ce channel dans la bd uportal :
      # psql -U uportal -f ./misc/db/pwdstore.sql uportal
    10. UBC_Webmail
      - Télécharger le fichier UBC_Webmail-0.9.6.zip ou UBC_Webmail-0.9.6.tar.gz et le décompresser dans un répertoire appelé UBC_Webmail
      - # cd UBC_Webmail
      - Modifier le fichier build.properties en spécifiant une valeur pour le paramètre server.home (ici /usr/local/tomcat) et une valeur pour uportal.home
      - # ant compile
      - # ant dist
      - Créer les tables nécessaires pour ce channel et qui sont définies dans le fichier properties/UBC_WebmailTables.xml en utilisant la commande ant db :
      - # ant -f ../uportal2_3_5/build.xml db -Dusetable=-t -Dtablefile=/properties/UBC_WebmailTables.xml -Ddroptables=-D -Dcreatetables=-C -Dpopulatetables=-nP
      - Attention si la commande ant db ne s'exécute pas à partir du répertoire de UBC_Webmail, copier le fichier UBC_WebmailTables.xml dans le répertoire properties de uportal2_3_5 et exécuter la commande à partir du répertoire uportal2_3_5 (ant db -Dusetable=-t .... sans le -f)
      - Attention, si dans uportal2_3_5/properties/portal.properties la valeur de org.jasig.portal.RDBMServices.getDatasourceFromJndi=true, ant db ne fonctionne pas. Il faut la remettre à false.
    11. UBC_AddressBook
      - Télécharger le fichier UBC_AddressBook-0.9.6.zip ou UBC_AddressBook-0.9.6.tar.gz et le décompresser dans un répertoire appelé UBC_AddressBook
      - # cd UBC_AddressBook
      - Modifier le fichier build.properties en spécifiant une valeur pour le paramètre server.home (ici /usr/local/tomcat), une valeur pour uportal.home, et une valeur pour UBC_Webmail.home
      - Modifier le fichier properties/UBC_AddressBook.properties en spécifiant les paramètres d'accès à l'annuaire LDAP (ldapURL, ldapBindDN et ldapBindPW)
      - # ant compile
      - # ant dist
      - Créer les tables nécessaires pour ce channel et qui sont définies dans le fichier properties/UBC_AddressBookTables.xml en utilisant la commande ant db :
      - # ant -f ../uportal2_3_5/build.xml db -Dusetable=-t -Dtablefile=/properties/UBC_AddressBookTables.xml -Ddroptables=-D -Dcreatetables=-C -Dpopulatetables=-nP
      - Attention si la commande ant db ne s'exécute pas à partir du répertoire de UBC_AddressBook, copier le fichier UBC_WebmailTables.xml dans le répertoire properties de uportal2_3_5 et exécuter la commande à partir du répertoire uportal2_3_5 (ant db -Dusetable=-t .... sans le -f)
      - Attention, si dans uportal2_3_5/properties/portal.properties la valeur de org.jasig.portal.RDBMServices.getDatasourceFromJndi=true, ant db ne fonctionne pas. Il faut la remettre à false.
    12. ressources
      - Télécharger le fichier ressources-0.9.6.zip ou ressources-0.9.6.tar.gz et le décompresser dans un répertoire appelé ressources
      - # cd ressources
      - Modifier le fichier build.properties en spécifiant une valeur pour le paramètre server.home (ici /usr/local/tomcat).
      - # ant compile
      - # ant deploy
    13. annuaire
      - Télécharger le fichier annuaire-0.9.6.zip ou annuaire-0.9.6.tar.gz et le décompresser dans un répertoire appelé annuaire
      - # cd annuaire
      - Modifier le fichier build.properties en spécifiant une valeur pour le paramètre server.home (ici /usr/local/tomcat).
      - # ant compile
      - # ant dist
    14. channelshelpeditor
      - Télécharger le fichier channelshelpeditor-0.9.6.zip ou channelshelpeditor-0.9.6.tar.gz et le décompresser dans un répertoire appelé channelshelpeditor
      - # cd channelshelpeditor
      - Modifier le fichier build.properties en spécifiant une valeur pour le paramètre server.home (ici /usr/local/tomcat).
      - # ant compile
      - # ant dist
    15. statsanalyzer
      - Télécharger le fichier statsanalyzer-0.9.6.zip ou statsanalyzer-0.9.6.tar.gz et le décompresser dans un répertoire appelé statsanalyzer
      - # cd statsanalyzer
      - Modifier le fichier build.properties en spécifiant une valeur pour le paramètre server.home (ici /usr/local/tomcat).
      - Suivre les étapes mentionnées dans le fichier misc/doc/INSTALL.TXT
      - # ant compile
      - # ant dist
  1. Installation de l'application web csadmin
    Cette application web est utilisée à l'extérieur du portail pour configurer des connecteurs entre la bd et les bases de données corporatives.
    - Créer la bd cs en exécutant les commandes suivantes sous l'usager postgres :
    # createdb -E LATIN1 -U uportal cs
    - Exécuter les commandes des scripts sql sous l'usager postgres :
    # psql -U uportal -f ./misc/sql/cs.sql cs
    # psql -U uportal -f ./misc/sql/inserts-base.txt cs
    # psql -U uportal -f ./misc/sql/inserts-unites.txt cs
    # psql -U uportal -f ./misc/sql/triggers-schema-groupes.sql cs
    - Télécharger le fichier csadmin-0.9.6.zip ou csadmin-0.9.6.tar.gz et le décompresser dans un répertoire appelé csadmin
    - Les détails de configuration de cette application web sont dans le fichier misc/doc/install.txt
  2. Remarques
    1. Certaines librairies Java sont partagées entre différents modules. Si vous changez une librairie, veuillez vous assurer de garder la même version partout.
    2. Le tableau suivant illustre les dépendances entre les différents modules :

      Module

      Dépendances

      uportal

      -

      common

      -

      cportaldb

      uportal

      whiteboardapplet

      -
      calculatrice -
      geonext -

      homepage

      uportal

      bookmarks

      uportal, common

      newsrendering

      uportal

      forum

      uportal, common, cportaldb

      filemanager

      uportal, common, cportaldb

      agenda

      uportal, common

      whiteboard

      uportal, common, cportaldb, whiteboardapplet

      community

      uportal, common, cportaldb, bookmarks, forum, filemanager, agenda, whiteboard

      pwdstore

      uportal

      UBC_Webmail uportal,
      UBC_AddressBook uportal, UBC_Webmail
      ressources uportal
      annuaire uportal