Le Canal Stockage évolue pour devenir Esup Portlet Stockage (Portlet JSR168) et apporter de nouvelles fonctionnalités. Utilisation de Esup Commons V2 allié à Spring MVC, Web 2.0, interdace WAI, interface pensée pour mobiles et interaction avec ESUP-ECM (support de CMIS) font parties des points importants de cette évolution.
Une version esup-portlet-stockage-1.0.0-beta-1 RC3 est dès maintenant disponible.
Elle ne propose pas encore l'interaction avec ESUP-ECM (support de CMIS) ni une interface accessible WAI mais ces 2 points font partie des prochaines évolutions prévues.
Spécifications
On peut retrouver les spécifications d'Esup Portlet Stockage ici .
...
- full ajax pour les navigateurs (utilisation de jquery, upload via jquery également).
- interface WAI (accessible) spécifique
- look (et ergonomie) portlet mobile spécifique sans ajax : on propose une navigation simple pour consultation uniquement (pas de copier/coller/uploads ...)
- copier/couper/coller, renommage, création de répertoire, upload/download de fichier.
- copier/couper/coller inter-serveurs
- utilisation de apache commons vfs pour l'accès aux serveurs de fichiers et donc supporte théoriquement les différents files systems supportés par vfs : cf http://commons.apache.org/vfs/filesystems.html -> la configuration du serveur utilise pour uri le format vfs ( file:///home/bob fonctionne par exemple );
- support de CMIS via Apache Chemistry (connexion avec Esup-ECM/Nuxeo disponible)
- pensé pensé cependant techniquement pour pouvoir utiliser autre chose que implémenter d'autres supports que via apache commons vfs , (et Apache Chemistry est actuellement à l'étude).
- utilise au mieux spring v3, mvc (2.5 pour la portlet), les annotations, etc.
- propose un fichier de configurations pour les différents serveurs / "drives" disponibles (en portlet, peut être fonction de l'appartenance à un groupe ou/et de la présence d'un "token" dans les préférences du context de la portlet).
- supporte 3 4 modes d'authentification : pas d'authentification, authentification username/password donné en dur dans le fichier de configuration, authentification username/password récupéré de l'utilisateur par un formulaire, authentification proxy cas en portlet via uPortal (testé et validé sur du sftp cassifié).
TODO
- supporte également une authentification supplémentaire spécifique pour Esup-ECM (Nuxeo) doté du plugin nuxeo-platform-login-shibboleth : propagation d'authentification via les entêtes HTTP, méthode similaire à ce que fait le mod shib d'apache avec nuxeo-platform-login-shibboleth
TODO
- Tests et documentations pour support Webdav et CIFS (l'idée est d'utiliser le sandbox de VFS)
- interface WAI
- support CMIS
- support Webdav
Téléchargement
Vous pouvez trouver la dernière version d'esup-portlet-stockage -1.0-beta-1 archivée sur sourcesup :
https://sourcesup.cru.fr/frs/?group_id=206
...
La dernière version taguée (esup-portlet-stockage-1.0-beta-1) est également disponible par subversion ici :
https://subversion.cru.fr/esup-stockage/tags/esup-portlet-stockage-1.0-beta-1
Déploiement Test - Servlet
...
Bloc de code |
---|
mvn clean package ; cd /opt/uPortal-runn/ ; ant deployPortletApp -DportletApp=/home/esup/esup-portlet-stockage/target/esup-portlet-stockage.war |
Déploiement Portlet - Esup v2 / uPortal 2
Nous avons testé le déploiement de la portlet sur un uPortal_rel-2-6-1-GA-quick-start de la même façon que pour une version 3, cela fonctionne bien.
Il faudra cependant faire attention aux points suivants :
- le ant deployPortletApp permet comme en V3 (en plus de déployer le war) de modifier comme nécessaire le web.xml en y spécifiant les paramètres pluto adéquates. le web.xml ainsi modifié nous indique que le guid est positionné à esup-portlet-stockage.esup-portlet-stockage -> utile à savoir pour la publication de la portlet en 2.6
- le tomcat d'uPortal 2.6 de ce quickstart embarque déjà un jstl-1.1.2.jar dans ses librairies (shared/lib de tomcat) aussi il faut supprimer la librairie esup-portlet-stockage/WEB-INF/lib/jstl-1.2.jar sous peine d'obtenir des exceptions du type javax.servlet.ServletException: javax/el/ELException (la portlet ne fonctionnant alors pas).
Screenshots
Galerie | ||
---|---|---|
|
...