La idea de integrar Drupal y Alfresco me rondaba por la cabeza desde marzo de 2008. Esto es una prueba más de que las ideas por sí solas valen poco (no siempre claro está), el verdadero valor está en materializarlas y llevarlas a cabo. La constancia y el esfuerzo marcan una diferencia en la trayectoria profesional de algunas personas.
En esta ocasión ha sido mi compañero y amigo Sergio Martín quien aceptó el reto y los resultados no se han hecho esperar. Desde hace unas horas está disponible para la comunidad de Drupal un módulo que nos permite su integración con Alfreso.

Para conocer las posibilidades de este módulo sólo hay que acceder a su página oficinal. Las posibilidades del módulo son múltiples.
- ¿Por qué preocuparse de que Drupal gestione los archivos que necesitamos publicar en un sitio web si para eso ya están los gestores documentales? Dejemos que Drupal y Alfresco se encarguen de lo que verdaderamente saben.
- La integración entre ambas soluciones se realiza usando HTTP-SOAP. Una prueba más de que la orientación a servicios flexibiliza muchísimo la interoperabilidad entre distintas soluciones.
- ¿Rendimiento? Aun estamos pendientes de obtener algunos datos objetivos.
- ¿Configuración? Muy sencilla, URL donde Alfresco tiene publicado su API HTTP-SOAP, usuario/contraseña, metadatos con los que deseamos trabajar y poco más.
- ¿Podemos referenciar los documentos desde otros tipos de contenido? Sí, gracias al submódulo alfresco_attach.module dado que el módulo principal proporciona un nuevo tipo de contenido (Alfresco item) perfectamente referenciable.
- Para mejorar la usabilidad existe el submódulo alfresco_import.module que nos permite importar de forma sencilla documentos a partir de un espacio de trabajo de Alfresco.
La versión que se ha publicado es un beta (6.x-1.0-beta) y nuestra intención es mantener y evolucionar el módulo. Evidentemente habrá incidencias que se tendrán que solucionar pero también tenemos nuevas funcionalides que no tardarán en llegar.
Te lo he dicho muchas veces, Sergio eres un crack. Lo mejor de todo es que estoy rodeado de otros tantos crack como él y entre todos creo que formamos un buen equipo. Gracias a todos.
Recientemente he tenido que configurar un entorno de desarrollo para trabajar con Drupal en Linux, concretamente Madriva. Quizás a alguien le puedan venir bien estas notas:
- Instalar y configurar Eclipse IDE con soporte para PHP (PDT Project). Ya comenté hace tiempo que uso Pulse para gestionar y mantener distintas instancias de Eclipse IDE.
- Instalamos Apache Web Server con soporte para PHP (preferiblemente PHP5). Para esto tenemos varias opciones:
- LAMPStack de BitNami
- Seguir estas instrucciones.
- Instalar Apache Web Server con soporte para PHP y MySQL desde paquetes
- Instalar Apache Web Server con soporte para PHP y MySQL desde los fuentes
- Descargamos y descomprimimos Drupal dentro de nuestro workspace de Eclipse:
[recena@localhost Eclipse 3.3 PDT]$ wget http://ftp.drupal.org/files/projects/drupal-6.4.tar.gz
[recena@localhost Eclipse 3.3 PDT]$ tar -xvzf drupal-6.4.tar.gz
[recena@localhost Eclipse 3.3 PDT]$ rm drupal-6.4.tar.gz
- Ahora configuramos un alias (p.e. qabox) para poder acceder a nuestra instalación de Drupal de una forma similar a http://localhost/qabox. Para ello añadimos a httpd.conf:
Alias /qabox "/home/recena/Workspaces/Eclipse 3.3 PDT/drupal-6.4"
<Directory "/home/recena/Workspaces/Eclipse 3.3 PDT/drupal-6.4">
AllowOverride All
Options MultiViews Indexes Includes FollowSymLinks
Order allow,deny
Allow from all
</Directory>
- A partir de este momento, accedemos a http://localhost/qabox, y lo que resta es seguir las instrucciones de la propia instalación de Drupal. Que no se os olvide colocar el correspondiente archivo .htaccess en el directorio raíz donde se encuentre instalado Drupal. En la documentación viene todo perfectamente comentado.
Una vez que tenemos lo básico para ejecutar Drupal nuestro trabajo se centrará -probablemente- en el desarrollo de módulos y/o temas. Pues bien, la idea es tener un proyecto para cada uno de los módulos y/o temas que desarrollemos. De esta forma tendremos nuestra instalación de Drupal por un lado, y nuestros desarrollos (modelados como proyectos de Eclipse) por otro. Ahora lo único que tenemos que hacer es decirle a Drupal que use estos módulos y/o temas. Así iremos viendo los resultados. Para hacer esto basta con hacer simples enlaces simbólicos donde corresponde y hacía donde se encuentran nuestros proyectos.
En la captura de pantalla que se muestra a continuación, veréis un tema que estoy desarrollando que se llama QABox y el enlace simbólico que he creado para que Drupal sepa que dispone de ese tema como se estuviera almacenado en $DRUPAL_HOME/sites/default/themes (p.e.):

Recent Comments