Faire un don ! | | style | statistiques | contactez-nous | plan | lettre d'information

Liens connexes

Dépêche modérée par

Dépêche éditée par

: Nuxeo annonce la version 5.1 de sa plateforme d'ECM libre

Posté par Stefane Fermigier (page perso, ). Modéré le 14 octobre 2007.
Nuxeo vient d’annoncer la sortie de Nuxeo Enterprise Platform 5.1, plateforme d’ECM libre basée sur les technologies Java EE 5.

Cette nouvelle version est le fruit de 6 mois de travail de la communauté Nuxeo depuis la sortie de Nuxeo EP 5.0, et un an depuis l’annonce par Nuxeo de sa migration de Zope à Java. Elle élargit le spectre des fonctions couvertes par la plateforme (voir plus loin). Elle renforce sa scalabilité pour répondre à des besoins de montée en charge importants. Enfin, elle présente un certain nombre d’avancées quant à la modularité du logiciel, grâce à son architecture orientée services, de façon notamment à permettre des déploiements multi-serveurs. Cette modularité permet également de ne déployer que les services dont on a besoin pour une application et de les configurer facilement et, également, d’étendre si nécessaire la plateforme en y ajoutant de nouvelles fonctions ou de nouveaux connecteurs vers d’autres applications ou services du système d’information de l’entreprise.

Plus généralement, et d’un point de vue business, la plateforme Nuxeo évolue pour répondre au mieux aux besoins des utilisateurs et des intégrateurs, et leur faire bénéficier en open source et avec une architecture moderne et cohérente, d’une plateforme comparable aux leaders du marché que sont Documentum, OpenText ou FileNet.

> Lire la dépêche (18 commentaires, moyenne: 1,8).  

Présentation générale de la plateforme

Pour ceux qui l’auraient oublié depuis la dernière dépêche sur ce sujet, Nuxeo EP est une plateforme d’ECM qui couvre notamment les besoins de la GED, du collaboratif, de la gestion des documents d’archives, du workflow, etc.

Les fonctions d’ECM sont assurées par la plateforme de service, baptisée Nuxeo Service Platform, qui peut être soit embarquée dans un serveur d’application Java EE 5, soit dans un client riche Eclipse RCP.

La plateforme serveur, baptisée Nuxeo EP, fournit les fonctions de GED aux utilisateurs via une interface Web, ou sert de base à des applications métier via une approche SOA.

La plateforme cliente, Nuxeo RCP, permet d’embarquer les fonctions de GED dans un client riche aux interfaces plus performantes qu’un simple client web Ajaxifié.

L’ensemble des services de la plateforme est implémenté par composants OSGi (des “greffons”) qui viennent s’insérer dans des points d’extensions, ce qui permet de configurer et d’étendre facilement la plateforme en fonction des besoins métiers.

Techniquement, la plateforme Nuxeo est développée à partir d’un certain nombre de bibliothèques et de frameworks open source existants, et respecte les principaux standards d’interopérabilité du monde Java (JSR). De plus Nuxeo participe activement au processus d’évolution des API Java standard (JCP - Java Community Process), notamment à la JSR-283 qui définit les évolutions de l’API standards Java pour l’accès aux dépôts de contenu (Java Content Repository).

Les principales nouveautés

Voici quelques nouveautés importantes de la version 5.1 :

Plus d’informations sur les principales nouveautés de la 5.1, sont données dans un New and Noteworthy d’une vingtaine de pages en PDF.

Pour avoir le détail des nouveautés depuis la 5.0, et si vous avez vraiment le courage, il y a les changelogs de toutes les versions intermédiaires :

Un point sur les technos utilisées

La plateforme Nuxeo se base sur un ensemble très riche de composants et d’outils libres développés principalement par ou sous la tutelle de quatre institutions majeures : la Fondation Apache, la Fondation Eclipse, la division JBoss de la société Red Hat, la société Sun Microsystems. Réciproquement, l’équipe de Nuxeo est amenée, dans certains cas, à collaborer avec ces projets afin de les faire évoluer pour répondre à nos besoins, ou pour corriger des bugs.

Le système de composants utilisé par la plateforme est basé sur le standard OSGi. L’implémentation choisie est Equinox de la Fondation Eclipse.

Le stockage des documents se fait en utilisant le standard JSR 170, aussi connu sous le nom de JCR (Java Content Repository), une API d’accès à un dépôt de document conceptualisé sous la forme d’un arbre de propriétés. Nous avons choisi d’utilier Apache JackRabbit, qui est d’ailleurs l’implémentation de référence de la JCR, développée par Day Software sous l’égide de la Fondation Apache.

JackRabbit sait stocker ses données dans un certain nombre de bases de données relationnelles. La base libre recommandée par le projet est PostgreSQL, mais il est également possible de travailler avec MySQL ainsi que des bases propriétaires comme Oracle, Sybase ou MS-SQL Server.

Le moteur d’indexation utilisé par défaut est Lucene de la Fondation Apache.

Côté serveur, Nuxeo EP est embarqué dans un serveur d’application JBoss AS 4. Nuxeo Runtime a été porté sur Glassfish v2, l’implémentation de référence du standard Java EE 5 développée par Sun. Il reste encore un travail de portage de la plateforme Nuxeo complète sur Glassfish, et ultérieurement à la porter sur les autres serveurs d’applications libre Java EE 5 existants, comme JOnAS d’ObjectWeb, Geronimo de la Fondation Apache, ou JBoss AS 5.

Le moteur de transformation de documents bureautiques utilise, en mode client-serveur, la suite bureautique OpenOffice.org développée principalement par Sun.

La construction du logiciel est assurée par Maven de la Fondation Apache. A cet effet, et du fait de l’approche innovante de la construction de logiciels à partir de composants choisie, un greffon spécifique pour Maven a été réalisé (nuxeo-maven-plugin).

Pour assurer la persistance des objets non-documentaires, la plateforme utilise le standard JPA (Java Persistance API) qui fait partie du standard EJB3, développé par Sun dans le cadre du Java Community Process. Plus spécifiquement, nous utilisons l’implémentation Hibernate développée par JBoss.

La couche Web repose sur le standard JSF (JavaServer Faces). Le projet s’appuie également sur JBoss Seam, le framework de développement web basé sur JSF et JPA développé par Gavin King (le créateur d’Hibernate) au sein de JBoss. Selon les développeurs de Seam, le projet Nuxeo est le premier projet d’envergure à avoir fait appel à Seam, et de nombreux échanges ont eu lieu entre les développeurs de Seam et ceux de Nuxeo de façon à ce que Seam réponde aux besoins de souplesse et de dynamicité de Nuxeo EP, et également pour corriger les bugs des premières version de Seam.

Le moteur de workflow par défaut est jBPM de JBoss.

Pour permettre le prototypage rapide d’application, le projet Nuxeo a choisi de s’appuyer sur des langages de scripts. A l’heure actuelle, aucun langage de script n’est privilégié, et le projet supporte les langages : Python (dans son implémentation Jython soutenue par la Python Software Foundation), Ruby (JRuby - développé par Sun), JavaScript (Rhino - contribué par la Mozilla Foundation), PHP (implémentation Quercus de la société Caucho Technology).

Côté client, Eclipse RCP est utilisé comme framework client riche multi-plateformes avec un look’n’feel natif. De nombreux greffons additionnels, provenant de la Fondation ou de la communauté Eclipse, sont utilisés pour fournir les services nécessaires aux applications bureautiques.

La qualité du logiciel est monitorée en permanence grâce à un ensemble de logiciels libres dédiés à la qualité logicielle :


Un appel à contribution

Comme tout projet libre digne de ce nom, la plateforme Nuxeo a été conçue pour permettre à une communauté de contributeurs de participer au projet. Le système de points d’extensions et de greffons est l’aspect le plus important, et le "plus" original de cette “architecture de la participation”, qui est au coeur de la vision de Nuxeo pour sa plateforme.

Les besoins, ou les envies, actuels sont :

Certaines de ces activités (ou d’autres, plus avancées) peuvent faire l’objet de stages, d’une part, ou de collaborations avec d’autres entreprises ou des laboratoires de recherche.

N’hésitez pas à me contacter à ce sujet si vous êtes intéressés.

Cette discussion est archivée, il n'est plus possible de laisser des commentaires.

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.

Passionnant

Posté par dragoonway () le 14/10/2007 à 17:32. (lien). Évalué à 7.

Moi qui ne connait pas grand choses à ce genre d'outil, je salue l'auteur de cette dépêche qui m'a occupé 2h, le temps de comprendre un peu tout ça. Merci encore.

--
o--weed-is-communism--o

Oubli: Restlet

Posté par Stefane Fermigier (page perso, ) le 15/10/2007 à 08:15. (lien). Évalué à 3.

Parmi les projets utilisés par la plateforme, j'ai oublié de mentionner Restlet (http://www.restlet.org/) qui est utilisé (et c'est une des nouveautés des la 5.1) pour implémenter les web services RESTful dans Nuxeo.

S.

--
Stefane Fermigier, CEO, Nuxeo
ECM et GED open source
www.nuxeo.com | www.nuxeo.org

Comparaison Nuxeo 5.1 avec un portail

Posté par ddevito (page perso, ) le 15/10/2007 à 09:22. (lien). Évalué à 2.

Bonjour,

J'aimerais savoir comment vous comparez techniquement et fonctionnent Nuxeo 5.1 avec un portail comme Liferay, par ex, qui inclut un CMS.

De manière générale, comment positionnez-vous Nuxeo 5.1 par rapport aux portails existants ?

Merci de votre réponse.

Cdlt,
Dominique

Intéressant

Posté par elagone () le 15/10/2007 à 13:33. (lien). Évalué à 4.

Un outil intéressant, que j'aimerai bien essayer.

Quelqu'un aurait-il comparé son fonctionnement avec Alfresco ? Qu'on puisse avoir une idée des forces/faiblesses de chaque projet ?

[+] Encore cet m.... de java...

Posté par PasRPasS (Jabber id, ) le 15/10/2007 à 20:37. (lien). Évalué à -4.

Bin tiens du java... voir plus loin... parce que je le vaux bien.
Il est toujours pas libre ce bloat de langage obsolète.
Y en a qui n'ont toujours pas compris que les langages de pseudo-haut niveau à compilation statique sont dépassés (cf java et ces sous-copies). Il faut utiliser les langages de vrai haut niveau (vraiment dynamiques) comme ruby/perl/python/lua/javascript couplés à des modules en C (allez... j'y met aussi le C++).
Bref, j'encourage fortement les gens à rester sur la version Zope et surtout passer à autre chose si la version Zope ne leur convient pas.

[+] Java vraiment GPL?

Posté par PasRPasS (Jabber id, ) le 16/10/2007 à 09:06. (lien). Évalué à -1.

Hope une nouvelle thread sur le sujet suivant:
Est-ce que java est vraiment GPL?
Peut-on installer un framework java *fonctionnel* à partir des sources par un simple:

configure;
make install

Revenir en haut de page