Date de création : | 3 Septembre 2004 | |
Dernière modification : | 3 Novembre 2004 | |
Diffusion : | internet |
Le Canal Webdav permet la gestion de documents au travers un espace de stockage personnalisé.
Dans le cadre du développement du projet inJac, le canal a été enrichi afin de gérer des fonctionnalités avancées comme la navigation entre plusieurs espaces de stockage, la gestion des droits …
Avant toute chose, décompressez l'archive dans le répertoire CWebdav-2-RC-3.
Le Canal Webdav repose sur l'utilisation de la libraire cliente Slide de Jakarta.
Le déploiement ne recopiant pas automatiquement les libraires utilisées au sein du portail, il est nécessaire de les recopier manuellement.
Les 3 fichiers concernés sont jakarta-slide-webdavlib-2.2pre1.jar , commons-httpclient.jar et jdom-1.0.jar se trouvant dans le dossier CWebdav-2-RC-3/lib.
En adaptant en fonction de la version de votre portail et de votre OS, les 3 fichiers sont à copier dans le dossier C:\esupdev\esupdev-2.3\uPortal_2-3-1-quick-start\webapps\uPortal\WEB-INF\lib.
Une fois les librairies recopiées, il est nécessaire d'éditer le fichier de configuration CWebDav.xml se trouvant dans le dossier CWebdav-2-RC-3\properties.
Voici un exemple de ce fichier :
<WEBDAV>
<!-- Définition des espaces -->
<SPACES url="http://mon.serveur:8080/slide"><SPACE
key="key1"
label="Espace perso"
path="/~{username}"
/><SPACE
key="key2"
label="Espaces d'édition"
path="/files/Injac/editionSpaces"
/><SPACE
</SPACES>
key="key3"
label="Espaces de publication"
path="/files/Injac/publicationSpaces"
/><!-- Authentification -->
<AUTH
usernameAttribute="username"
trustedLogin="toto"
trustedPassword="trusted"
/><!-- Classe utilisant la librairie -->
<DAV_ACCESS
class="org.esupportail.portal.channels.CWebdav.provider.DavAccessImpl"
/><!-- Options -->
<DEFAULT_OPTIONS_INTERFACE
confirmDel="true"
allowDelNonEmptyFolder="true"
/><!-- Description des fichiers non visibles par l'utilisateur -->
<INVISIBLE_FILES>
<REG_EXP pattern="^\..*"/>
</INVISIBLE_FILES>
</WEBDAV
Voyons en détail les différents aspects de ce fichier de configuration.
Les balises "<SPACE >" définissent chaque espace visible par l'utilisateur.
Les attributs sont les suivants :
La gestion des espaces peut se faire à travers des attributs LDAP. Par exemple, nous pouvons utiliser l'attribut "username" correspondant au login de la personne afin de définir un espace de travail personnel. Mis entre accolades, l'attribut est remplacé automatiquement par sa valeur. Le path de cet espace personnel serait alors /~{username} . Il est également possible de cette manière de créer des espaces de travail partagés par tous les étudiants d'une même promotion, il suffit pour cela d'utiliser l'attribut stockant le code étape de l'étudiant.
Il est à noter que ce canal peut être utilisé en tant que canal propre à inJac, pour cela, il faut définir les 3 espaces personnel/auteur, édition et publication. Mais il peut être utilisé en tant que simple Canal Webdav et alors ne définir que des espaces personnels.
Dans cette version, l'authentification se fait de manière "trusted", c'est-à-dire que nous utilisons un mot de passe partagé par tous les utilisateurs.
Les attributs sont les
suivants :
"usernameAttribute"
: cet attribut donne le nom de l'attribut LDAP qui est
utilisé pour récupérer le login de
connexion de l'utilisateur. En effet, c'est ce même login qui
est utilisé pour la connexion au serveur Slide. Par
défaut, nous utilisons l'attribut "username".
"trustedLogin"
: il est possible d'utiliser un login partagé par tous les
utilisateurs. Si ce champ est renseigné, le login de
connexion de l'utilisateur n'est pas
récupéré, et c'est celui-ci qui sera
utilisé.
"trustedPassword"
: mot de passe unique partagé par tous les utilisateurs.
Afin de s'abstraire totalement
de la libraire utilisée, une seule classe gère
l'utilisation de la bibliothèque cliente. Le nom de cette
classe est renseigné au niveau du fichier de configuration
afin de changer cette classe en cas de changement de
bibliothèque.
"class"
: par défaut, la valeur est org.esupportail.portal.channels.CWebdav.provider.DavAccessImpl
"confirmDel"
: si la valeur est à "true", un message de confirmation
apparaît lorsque l'utilisateur souhaite supprimer un fichier
ou un dossier.
"allowDelNonEmptyFolder"
: si la valeur est à "true", l'utilisateur a le droit de
supprimer des répertoires non vides.
Certains types de fichiers
sont invisibles à l'utilisateur, comme les fichiers
système par exemple. Pour cela, nous utilisons une
expression régulière au niveau de la
configuration, définissant la forme de ces fichiers :
"pattern"
: par défaut, nous cachons les fichiers dont le nom commence
par un point, l'expression régulière
correspondant est "^\..*"
Préparation du
déploiement : modifier le fichier build.properties
en fonction de la version de portail que vous utilisez.
Lancez la commande "ant
deploy" relative au fichier build.xml
contenu dans le dossier CWebdav-2-RC-3.
Il ne reste plus qu'à l'administrateur du portail de publier
le canal.
Création : 3 Septembre 2004 - Yohan Colmant (Université de Valenciennes) | |
Modifications :
3 Novembre 2004 - Yohan Colmant
(Université de Valenciennes) |