Open IT Experts for Enterprise

Zylk empresa de desarrollo de ecommerce

Integración de aplicaciones en Alfresco ECM

Cesar Capillas
Cesar Capillas

En el paradigma de integración de
aplicaciones externas (un registro de entrada / salida, un buscador de
imágenes, una aplicación de archivo y firma digital…. ) con un ECM
(ya sea Alfresco o Nuxeo) o un portal empresarial como Liferay siempre
determinamos ciertos alcances o niveles de integración. Este tipo de
integraciones con aplicaciones de terceros, sean a medida o no, son
referidas a veces como «content centric applications», y
pueden ser web, móviles o de escritorio.

Nivel 0: Estandares del ECM

El repositorio actua como un almacén de
documentos al que se accede y consulta a través de un sistema de
unidad compartida como CIFS o Webdav y las acciones CRUD (create,
read, update & delete) son acciones sobre el sistema de ficheros,
o acciones a través de APIs Webdav para la manipulación de archivos.
En el repositorio se plantea una estructura jerárquica de carpetas y
documentos, en la que se pueden accionar reglas de contenido
adicionales por ejemplo, para la transformación de documentos o el
envío de mails.

Nivel 1: Operaciones básicas sobre archivos y registros

El siguiente nivel incluiría el uso de
las APIs Webscript (REST) o CMIS para las acciones CRUD sobre esos documentos.

En este nivel hemos definido, una
especie de pool de conexiones con el gestor documental (como si fuera
una base de datos de documentos), donde un usuario con permisos en el
ECM hace las acciones. Puede ser util para la realización de vistas
lógicas de acceso y descarga. Normalmente con un usuario del ECM que
tiene los permisos necesarios para las realizar las consultas via API.

Integración de aplicaciones en Alfresco ECM

Nivel 2: Usuarios y permisos

El siguiente nivel integraría los
usuarios de aplicación y del repositorio. Para esto hay diferentes
aproximaciones, desde sistemas de usuarios comunes en un directorio
LDAP, sistemas
de SSO basados en CAS (por ejemplo) o incluso a
través de usuarios de bases de datos comunes.

Por otro lado, la definición del sistema
de permisos en el ECM, permitiría definir la seguridad en las acciones
CRUD y en las búsquedas. Aquí es importante discernir y unificar los
roles de la aplicación y los roles en el repositorio.

En el momento en que introducimos la
seguridad del usuario, se obtienen muchos beneficios al poder utilizar
todos los motores de indexación, categorizado, etiquetado, tipificado
del gestor documental. Requiere de mayor esfuerzo inicial pero se
obtienen de mayores beneficios a futuro. Un ejemplo puede ser esta
integración entre Zimbra, Alfresco y la aplicación a medida
desarrollada en este caso (un registro de entrada / salida). La
aplicación de algunos conectores de Alfresco addons puede facilitarnos
algunas integraciones a bajo nivel, como en este ejemplo presentado en
la Community
Meetup de Alfresco de 2013. Y por último, otro ejemplo de
integración de Alfresco es Sinadura
ECM, en este caso una aplicación de escritorio basada en CMIS.

Integración de aplicaciones en Alfresco ECM

Nivel 3: Tipos de contenido y metadata – REST/CMIS

En este punto, nuestros documentos de
valor pueden estar tipificados con metadatos de negocio. Y
principalmente a través de REST / CMIS integraríamos los metadatos
para realizar mejores búsquedas. En este punto, hay que tener en
cuenta que la aplicación de aspectos en el modelo de contenidos de
Alfresco no es estrictamente compatible con CMIS estándar, búsquedas
case sensitive…. y en general de las limitaciones de las APIs, en
este caso de CMIS, al tratarse de un estandar con un conjunto de
especificaciones de gestión documental y no de todo el repositorio.

Nivel 4: Otros servicios – tagging y categorización

Si además nuestra integración requiere
de otras características avanzadas que no forman parte del estándar
CMIS, como la asignación de permisos, asociaciones o la categorización
de contenidos, tendremos que usar API Webscript / REST.

Nivel 5: Nuevos servicios, acciones….

Si queremos definir nuevos servicios de
gestión documental en el ECM, por ejemplo un
servicio de validación de firma digital, es necesario definir
servicios webscript y acciones java backed en Alfresco (Alfresco Foundation).

Nivel 6: Alfresco Share

Por otro lado, en Alfresco Share es posible parametrizar y extender
funcionalidad a través de:

  • tipos
    documentales personalizados, formularios
    de búsqueda y plantillas de nodo y espacio
  • metadata templates, que nos permiten visualizar y personalizar
    mejor los metadatos de negocio.
  • buscadores personalizados o lanzadores como
    los expuestos aquí
    .
  • modificaciones de usabilidad de las vistas de los documentos, como
    aquí.
  • dashlets de contenidos, que configuran vistas lógicas
    parametrizadas o búsquedas personalizadas, como por ejemplo este.
  • acciones especificas para un workflow, por ejemplo la firma
    digital con un applet
    .
  • tareas programadas personalizadas con quartz que utilizan el API
    Foundation de Alfresco, como este.
  • workflows personalizados como el comentado aquí.
  • … y muchas mas …

Si te ha parecido interesante comparte este post en RRS

Facebook
LinkedIn
Telegram
Email

Leer más sobre temas relacionados

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *