mardi 12 juillet 2011

Espace racine des protocoles FTP, CIFS ...

Vous savez sans doute déjà que l’entrepôt Alfresco est accessible par différents protocoles, notamment FTP, CIFS, NFS …

Mais savez-vous qu’il est possible de n’exposer qu’une partie de votre entrepôt via ces interfaces d’accès ?

Pour cela, il vous faut surcharger la configuration par défaut du subsystem File Servers.

Qu’est ce qu’un subsystem ? Réponse ici.

Comment configurer un subsystem ? Réponse là.

Quelques infos supplémentaires sur le FileServer Subsystem ? Voici la page wiki dédiée.


En l’occurrence, dans le cas décrit ici, il faudra adopter la 3ème méthode de configuration du subsystem, puisque l’on va devoir modifier la définition d’un bean Spring appelé « filesystemsContext ».

En effet, il suffit de modifier la valeur de la propriété "rootPath", comme suit :

<property name="rootPath">

<!-- <value>/${spaces.company_home.childname}</value> -->

<value>/app:company_home/st:sites</value>

</property>


Dans cet exemple, nous décidons de configurer la racine des accès des interfaces de type « File Server » comme « Accueil / Sites ». Ainsi, tout utilisateur se connectant en FTP, CIFS ou NFS à l’entrepôt ne pourra voir que la liste des sites collaboratifs.








Enfin, sachez qu’en observant de près les 2 fichiers de configuration du subsystem FileServers, vous découvrirez sans doute d’autre astuces de configuration (changer le nom de l’espace racine, modifier uniquement le répertoire racine pour FTP, …)

jeudi 7 juillet 2011

Configuration des aspects dans Share

Dans l’interface Share, il est possible d’appliquer (et d’ôter) des aspects à des dossiers et des contenus. Par défaut, Share expose un certain nombre des aspects existants dans Alfresco, dans cette fenêtre de dialogue.
Mais il est bien sûr possible d’ajouter des aspects spécifiques, ou d’exposer des aspects Alfresco cachés par défaut.
Je vais prendre l’exemple de l’aspect Alfresco « cm:attachable », qui permet, appliqué à un objet, de lui attacher des documents liés. Cet aspect n’apparaît pas, par défaut, dans le dialogue de gestion des aspects.

Pour cela, il faut créer un fichier share-config-custom.xml dans tomcat/shared/classes/alfresco/web-extension (vous pouvez vous aider du fichier share-config-custom.xml.sample qui y figure normalement).
Si vous placez dans ce fichier le « code » suivant, et que vous redémarrez Alfresco, vous verrez alors apparaître l’aspect « cm :attachable » dans l’action de gestion des aspects :

<!-- Document Library config section -->

<config evaluator="string-compare" condition="DocumentLibrary" >

<aspects>

<!-- Aspects that a user can see -->

<visible>

<aspect name="cm:attachable" />

</visible>

<!-- Aspects that a user can add. Same as "visible" if left empty -->

<addable>

</addable>

<!-- Aspects that a user can remove. Same as "visible" if left empty -->

<removeable>

</removeable>

</aspects>



Vous devinerez également, en notant la présence des sections « addable » et « removeable », qu’il est possible de configurer plus finement l’affichage des aspects sur les actions d’ajout ou de suppression.


mardi 21 juin 2011

Feuille de route 2011 - Swift

On ne s'en rend pas forcément compte en ne lisant que les numéros de version d'Alfresco, mais chaque version possède un nom de baptême donné par les développeurs. Il y a par exemple eu "Slingshot" pour la version 3.0, un peu plus tard "Cheetah" avec la version 3.4 et voici que se prépare depuis quelques mois la future version d'Alfresco : "Swift".

Swift ne porte pas encore officiellement un numéro de version, mais on commence par contre à avoir une très bonne vision des nouveautés qu'elle comportera. Et elles sont nombreuses !

Voici donc un résumé des plus importantes.

Coté interface tout d'abord, Share va recevoir un très grand nombre d'améliorations, pour apporter de nouvelles capacités bien sûr, mais aussi pour faciliter la prise en main de l'existant. Il est difficile de tout lister en quelques lignes, mais on peut citer, entre autres :
  • Un dépôt de documents par glisser-déposer, basé sur HTML5.
  • De nouvelles dashlets de bienvenue pour guider les nouveaux utilisateurs.
  • Une page de détails des documents revue, pour améliorer la lisibilité.
  • Le support des formats vidéos.
  • Les fonctions "j'aime" ou encore de nouvelles capacités de tri.
  • La réorganisation des composants (Wiki, blog, ...) par glisser-déposer.
  • Des thèmes par sites.
  • Des notifications en mode "push" par e-mail.
  • ... et des dizaines d'autres améliorations pour gagner en souplesse et en puissance !
Certaines de ces nouveautés sont visibles sur ce site, mis à disposition par un partenaire Alfresco.

Mais une nouvelle version d'Alfresco, ce n'est jamais uniquement des nouveautés coté interface utilisateur, c'est aussi de nombreuses améliorations à un niveau beaucoup plus bas. Par exemple :
  • L'intégration de SOLR, sur laquelle on reviendra certainement sur ce blog, et qui va amener les capacités d'indexation à un niveau beaucoup plus haut avec en particulier la notion de serveur d'indexation séparé.
  • L'intégration du moteur de workflows Activiti, qui lui va décupler les capacités de gestion des processus. Nous y reviendrons aussi.
  • De gros travaux sur la gestion de certains protocoles en mode cluster. Sont concernés CIFS, FTP, CMIS, WebDAV, ou encore l'implémentation de MSSP.

Le lien entre les fonctions de bas niveau et l'interface utilisateur, c'est la notion de console d'administration. Avec Swift, la console d'administration qui se contentait jusqu'à présent de permettre la gestion des utilisateurs et des groupes va pouvoir aussi gérer la majorité des services Alfresco. Configuration des serveurs de fichiers, de l'intégration avec la messagerie (IMAP, SMTP), des flux d'activité, de l'authentification, etc ...

Autre amélioration dans la gestion, les modèles de données (définition des types, aspects et propriétés) seront aussi manipulables dans l'interface !

Coté web, l'apparition d'un framework de publication va permettre de connecter Alfresco à de nombreux canaux de publication afin de pousser le contenu vers de nombreuses cibles en parallèle, de Twitter à YouTube en passant par de nombreux autres. Tout cela en conservant un contrôle sur le moment de la publication mais aussi avec une traçabilité complète. Encore un sujet à couvrir ultérieurement sur ce blog.

Enfin les développeurs ne seront pas oubliés. En plus de toutes les API liées à ces fonctionnalités, de nombreuses améliorations vont venir simplifier les extensions de Share, le processus de mise à jour ou encore enrichir le support de CMIS.

Il y a encore beaucoup à dire sur Swift, et ce sera l'objet de plusieurs posts ici même, dans les prochains mois. Restez en ligne !

En attendant, vous pouvez aussi lire ce document qui reprend ces informations (et plus encore).