Integración Alfresco con Drupal (o viceversa) con CMIS

La integración entre diferentes aplicaciones es, hoy en día, el caballo de batalla de los productos, clientes e integradores. Cuando hablamos de Open Source, esto se convierte casi en una obligación.

Gracias al estándar CMIS adoptado por Alfresco, las tareas de integración, independientemente del lenguaje de programación utilizado, son mucho más sencillas.

Sobre la integración de Alfresco y Drupal se ha hablado mucho, Jeff Potts ha hecho algunos screencasts, Roger Carhuatocto hizo una presentación sobre el tema en la Drupal Camp 2010, Optaros hizo el conector CMIS para Drupal y mucho antes, Sergio Martin junto a Manuel Recena hicieron un conector vía WebServices. Es decir, el tema trae cola y sólo basta con hacer una búsqueda en Google para dar cuenta de ello.

¿Qué nos puede aportar una integración de este tipo? (extraído de la presentación de Roger)

  • Flexibilidad:
    • Incorporar nuevas funcionalidades, Web 2.0.
    • Cambiar el Look&Feel.
  • Escalabilidad:
    • Búsqueda de ficheros PDF, SWF, Doc, PPT, etc.
    • Tengo muchos usuarios simultáneos.
  • Interoperabilidad:
    • Tengo MS Sharepoint, Documentum y tengo mis ficheros en el HD, …cómo los centralizo?
  • User Experience:
    • El usuario necesita productividad: Espacio colaborativo, gestión de conocimiento, repositorio documental corporativo, workflows/gestión de expedientes, etc.

En este artículo quiero mostrar un ejemplo sobre la configuración de Drupal para conseguir la integración con Alfresco vía CMIS y poder mostrar contenido que está en el repositorio dentro de un contenido en Drupal. En mi caso Alfresco 3.3 y Drupal 6.17. No voy a hablar de la sincronización entre ambos entornos, que permitirá que los contenidos creados en Drupal o Alfresco sean contenidos del primero. No obstante, el conector CMIS si soporta esa opción (cmis_sync).

Debemos tener instalado, configurado y funcionando Drupal y Alfresco. El conector CMIS puedes descargarlo de aquí; en mi caso ha sido la versión cmis-6.x-3.01. En Alfresco no hay que instalar ningún tipo de módulo, para eso soporta CMIS 😉

  1. Descomprime el fichero “cmis-6.x-3.01.tar.gz” y copia la carpeta “cmis” en el directorio “modules” de Drupal.
  2. En Drupal, vamos a “Admin -> Administer -> Site building -> Modules” y activamos los módulos “cmis“, “cmis_common“, “cmis_browser” y “cmis_query“.
  3. En Alfresco creamos un usuario llamado “cmisuser” con permisos de administrador (lo incluimos en el grupo ALFRESCO_ADMINISTRATORS).
  4. Configuramos un repositorio CMIS, en este caso, nuestro Alfresco añadiendo las siguientes líneas en el fichero “sites/default/settings.php“:

[php]
$conf[‘cmis_repositories’] = array(
‘default’ => array(
‘user’ => ‘cmisuser’,
‘password’ => ‘contraseña’,
‘url’ => ‘http://servidor:8080/alfresco/s/cmis’
)
);
[/php]

Hecho esto, podemos probar la integración. En la sección Admin veremos tres nuevas opciones:

  • CMIS Information” que nos mostrará la información CMIS del repositorio.
  • CMIS Query” donde podemos ejecutar consultas, por ejemplo, prueba la siguiente sentencia para ver los contenidos del repositorio: select * from cmis:document
  • CMIS Repository” donde veremos el contenido del repositorio de Alfresco y podremos navegar por él. En la opción “Actions” podemos crear carpetas, contenidos y actualizar documentos.

No conozco muy bien Drupal, así que no he podido hacer más de lo aquí descrito, pero he visto que se puede usar un Block con contenido CMIS y muchas cosas más que podéis ver en el screencast de Jeff Potts mencionado anteriormente.

20 thoughts to “Integración Alfresco con Drupal (o viceversa) con CMIS”

  1. Hola Toni,

    Interesante este post sobre la integración de Alfresco con Drupal. Desde hace 5 años estoy trabajando en mi proyecto de http://www.padelalmeria.es con Drupal y que, ahora, se pueda integrar con Alfresco abre unas posibilidades casi infinitas.

    Como siempre, muchas gracias por estar pildoras formativas que nos ayudan a abrir nuevos caminos en configuraciónes e integraciones de productos.

    Un saludo from Almeria Town.

  2. Hola Tomás! No me acordaba que eres experto en Drupal, te podía haber preguntado alguna duda 😀
    Gracias por el comentario amigo!!!

  3. Ey! pero que pasa por aui que no me habeis invitado? Tomas a finales de Septiembre estamos organizando un evento de Gestion Documental Open Source en Madrid On Rails, subete y hablamos que ya hace años 😉

    oye… un abrazo !

  4. Saludos Toni,

    Hola soy estudiante universitario de infórmatica, desarrollo de software y quería felicitarte por este magnífico blog, que tanto me ayuda. Alfresco para mí a significado la plataforma en la cual estudiar y sobre la cual aprender desarrollar nuevas aplicaciones, sin embargo gracias a sitios como este, a veces puede uno agrandar más la visión de que existe allá afuera, en el universo del conocimiento.

    Interesante la propuesta de CMIS en Drupal con Alfresco creo que un punto de mejora podría ser que el módulo soporte múltiples conexiones con varios ECM Alfrescos.

    Saludos!!!

  5. Hola David,

    Muchas gracias por tus palabras, me alegro que te sea de utilidad el blog y espero que lo siga siendo.

    Sobre la ampliación del conector CMIS a varios repositorios, la verdad es que si sería interesante, gracias y saludos.

  6. Hola estoy trabajando con el módulo de drupal CMIS. Megustaria saber si existe la posibilidad de configurar un repositorio CMIS, en este caso, Alfresco que no sea añadiendo las siguientes líneas en el fichero “settings.php“:
    view sourceprint?
    $conf[‘cmis_repositories’] = array(
    ‘default’ => array(
    ‘user’ => ‘cmisuser’,
    ‘password’ => ‘contraseña’,
    ‘url’ => ‘http://servidor:8080/alfresco/s/cmis’
    )
    );

    Es que asi solamente se puede conectar el usuario “admin” y me gustaría que se conectaran otros ususario que cumplan con estos requisitos.

    Gracias.

  7. Toni el video no lo puedo ver, ud cree que me pueda mandar via e-mail la como lo hacen, si pueden enviarme el modulo mejor, gracias

  8. Hola Geiber me encuentro en el mismo punto que tu comentabas. Pudiste solucionarlo?, lo adecuado sería que el usuario logado en Drupal fuera el que se conectase a Alfresco. Esto me solucionaría multitud de problema de permisos. Tengo los dos sistemas autentificadois mediante LDAP.

    Gracias y un saludo.

  9. Buenos Dias,
    gracias por el aporte de la integracion de drupal con alfresco,

    pero ahora necesito que el documento que se publique en Drupal se
    almacene en el Alfresco

    como podria hacerlo

    gracias por la ayuda que me puedan brindar.

  10. Hola Juan Carlos, eso es lo principal que se hace mediante la integración. Con CMIS es la forma de hacerlo. No tengo ningún ejemplo disponible a la mano.

  11. Hola Toni,

    aquí recién ingresando al mundo alfresco, pero quisiera la solución para que diferentes usuarios se puedan conectar al repositorio, me das una mano con eso??

    Gracias.

  12. Exactamente, vi la respuesta al amigo GEIBER y mi problema es el mismo pero los recursos ya no están disponibles, te agradecería mucho tu ayuda.

    saludos,

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.