alfresco_logo_transparentPróximamente saldrá a la luz la nueva versión de Alfresco Enterprise, ya van por la 5. La versión Community hace ya algún tiempo que está siendo probada por la comunidad, y hay que resaltar que los cambios son importantes. Las críticas son numerosas, sobre todo por lo que esta versión deja atrás.

Es habitual que los productos software vayan abandonando características obsoletas, bien porque han sido sustituidas por otras mejores, o porque no las consideran importantes. En este caso hay que admitir que Alfresco ha soltado mucho lastre, y no con el visto bueno de muchos.

En este post se indican los cambios más importantes en cuanto a qué se deja atrás, y se dejan para un post posterior las novedades que se incorporan.

Alfresco Explorer, Consolas JSF y URL Addressability API

Desde el punto de vista del usuario final la supresión del Alfresco Explorer es el principal cambio. Esta aplicación, basada en JSF, ha sido la interfaz de usuario de Alfresco desde sus orígenes hasta la aparición de Alfresco Share. Después de un periodo de convivencia, Alfresco Share se ha impuesto, y Alfresco Explorer ya no se incluye en el alfresco.war. El cliente JSF tenía sus contras, pero ha sido para muchos usuarios su herramienta de trabajo por años, y seguramente la resistencia al cambio sea importante.

alfrescoWebClient

Vista del Alfresco Explorer, al que muchos usuarios están acostumbrados

Con el Alfresco Explorer también se han perdido las consolas de administración que éste incluía. Además, desde Alfresco no han sido previsores en este sentido, y no se ha proporcionado una alternativa. Es de suponer que en breve estas consolas se incorporen de algún modo, ya que resultaban de gran utilidad para los administradores.

La URL Addressability API es un conjunto de Servlets que permitían, mediante ciertas URL, realizar operaciones como: obtener tickets de sesión, descargar documentos, etc. Al estar los servlets en el Alfresco Explorer, también se pierden con su marcha.

No es menos importante este cambio para los programadores, que pierden el acceso directo a la Java Foundation API. Los desarrollos sobre Share interaccionan con el repositorio básicamente mediante webscripts, con lo que hay que tener especial cuidado, por ejemplo si se requieren operaciones de negocio atómicas.

Lucene por SOLR4

La sustitución de Lucene por SOLR4 traerá nuevos desafíos. Con SOLR se gana a la hora de montar una arquitectura escalable que permita añadir nodos sin dificultad. Pero también se pierden características importantes, como la indexación in transaction, con el consiguiente problema de la inconsistencia eventual (ver entrada relacionada sobre canned queries para evitar el problema de la inconsistencia eventual).

Adiós ant, hola maven

El viejo SDK de Alfresco sustentado por ant ha sido reemplazado por un nuevo modelo basado en maven. Hace tiempo que la comunidad demandaba este cambio, y es una gran noticia que por fin sea oficial. En Queres desde el principio hemos usado nuestro propio mecanismo de desarrollo basado en maven, por lo que este cambio nos impacta poco, y lo hace en el sentido positivo. Pero puede haber quién se vea forzado a cambiar de manera de trabajar para adaptarse.

Endpoints CMIS

Anteriormente a Alfresco 4, se empleaban unas URL de endpoint para CMIS que apuntaban a una implementación propia de Alfresco. A partir de Alfresco 4 se introduce una nueva implementación basada en Apache Chemistry, con otras URL de endpoint distintas. Finalmente se prescinde de la implementación original de CMIS desarrollada por Alfresco en favor de la implementación basada en Chemistry.

Esto está bien porque reduce la confusión de disponer de dos URL distintas, pero hay que tener en cuenta que también la implementación de CMIS cambia, por lo que aunque el impacto debería ser mínimo, es recomendable probar bien, ya que algún detalle de implementación que difiera (o algún bug en la nueva implementación) puede producir errores inesperados en algo que “antes funcionaba”.

“CML” Web Services SOAP API

Antes de la aparición de CMIS alfresco ofrecía una API SOAP basada en un esquema propio llamado CML (Content Manipulation Language). Esto era conocido también como Alfresco Remote API, y hay que decirle adiós.

Si alguna aplicación está integrada con Alfresco en base a esta API SOAP, hay que pensar en cambiarla por CMIS. Esto puede ser un problema importante en una organización en la que un proveedor lleve Alfresco, y pongamos que existe un ERP llevado por otro proveedor que se comunica con Alfresco mediante el API SOAP obsoleta. En este caso el cambio en Alfresco también impacta seriamente en los clientes conectados.

JCR / JCR-RMI

JCR (Java Content Repository) es un API Java que implementa los estándares JSR-170 y JSR-283. No es una API con mucho predicamento en Alfresco, ya que la Foundation API de Alfresco ofreccía más potencia y en consecuencia era preferida a JCR; pero siendo un estándar Java, es muy posible que alguien lo usara. Parece que en lo que a estándares se refiere, Alfresco se lo ha jugado all in con CMIS.

Repositorio AVM

Alfresco ofrecía un repositorio principal para la gestión de documentos (DM, Documents Management), y otro repositorio alternativo llamado AVM, para la gestión de contenido web (WCM, Web Content Management). Definitivamente el repositorio AVM desaparece.

Otros cambios

Hay otros cambios, que al lado de los ya señalados pueden parecer minucias, pero hay que tener en cuenta también. Algunos como la integración con twitter y facebook se veían venir, porque no parecen muy interesantes para la mayoría de clientes empresariales. Otros como la aplicación KnowledgeBase (base de conocimiento) sí que pueden tener más impacto. A continuación una enumerción de otros que se van y no estarán con nosotros en Alfresco 5

  • Social Publishing Features
  • Blog Publishing Features
  • Flex SDK
  • Forms Development Kit
  • Web Framework Samples
  • KnowledgeBase Sample App

jBPM

Tranquilidad, aun es posible seguir usando (por ahora) jBPM como motor de flujos. Pero hay que tener muy en cuenta que Alfresco ya ha avisado que está condenado a desaparecer. En su lugar recomiendan la migración a Activity, que es el propio motor de flujos desarrollado por Alfresco. Este es un cambio muy importante, así que es recomendable ir preparándose para cuando desaparezca “de la noche a la mañana”.

Conclusiones

La comunidad de Alfresco está alterada, y como hemos visto en este post, no les faltan razones. La versión 5 de Alfresco es el mayor cambio desde su nacimiento. Hay variaciones de tal calibre que en muchas organizaciones la actualización de la versión 4 a la 5 puede ser imposible por el esfuerzo que requeriría migrar la funcionalidad desarrollada durante años. Por otra parte, si no se hace la migración, los clientes de la versión Enterprise pueden perder soporte sobre alguna funcionalidad.

También hay que señalar que además de los cambios en el producto, se han producido cambios importantes en el modelo de negocio de la versión Enterprise. Cambios que afectan a la política de licencias, y que también han tirado de los precios hacia arriba considerablemente.

a3s En este escenario de incertidumbre, cada vez es menos atractivo (sobre todo para una organización pequeña) plantearse montar una solución de gestión documental mantenida por ellos mismos. Y así, gana peso la posibilidad de contratar el software Alfresco como servicio, lo que se conoce en inglés como modelo SaaS, Software as a Service. En Queres somos capaces de ofrecer esa posibilidad mediante la gestión documental como servicio online (A3S). Viendo los costes que los cambios en el producto software pueden acarrear, es muy interesante disponer de la estabilidad que proporciona un servicio como A3S.

Si te interesa este servicio a3s contáctanos:

Si quieres profundizar más en el tema del post, y ver lo que otros han escrito sobre los cambios, no dejes de visitar los siguientes enlaces:

You may be surprised at what’s not in Alfresco 5 (Jeff Potts)
Alfresco Community 5.0.b Release Notes
Important Changes in Alfresco Community Edition 5.0.b