Alfresco Hack: Las consolas “escondidas” de Alfresco

Los que conocéis Alfresco en profundidad sabéis que éste guarda algunas sorpresas interesantes. Entre ellas se encuentran las consolas. Básicamente son herramientas que nos permiten acceder a información o hacer tareas de bajo nivel con Alfresco vía web, destinado principalmente a programadores o administradores.

Vamos a ver que consolas tenemos disponibles y en qué nos pueden ayudar cada una de ellas.

Nota 1: para acceder a estas consolas previamente hay que estar logueado como usuario “admin” en Alfresco Explorer (http://localhost:8080/alfresco).
Nota 2: para ejecutar comandos en estas consolas hay que escribir el comando y pinchar en “Submit”, si escribimos el comando y pulsamos “Enter” no ejecutará el comando.

La “Consola del Repositorio” es una alternativa al cliente web (Alfresco Explorer) y nos permite desplegar, recargar, activar y desactivar modelos en caliente. Podemos hacer lo mismo con ficheros .properties relacionados con idiomas. Un comando de ejemplo podría ser “deploy model alfresco/extension/exampleModel.xml“.

Permite cargar los cambios realizados en el fichero “web-client-config-custom.xml” sin necesidad de reiniciar el servidor. Relmente recarga toda la información modificada que contenga el bean webClientConfigSource en el archivo “alfresco/web-client-application-context.xml” de ahí que digamos que recarga los cambios en “web-client-config-custom.xml“. Más información aquí. Hacer esa tarea es tan fácil como escribir “reload” y hacer clic en “Submit“. Veremos algo como lo siguiente:

<Built-in evaluators> ---> OK
classpath:alfresco/web-client-config.xml ---> OK
classpath:alfresco/web-client-config-dialogs.xml ---> OK
classpath:alfresco/web-client-config-wizards.xml ---> OK
classpath:alfresco/web-client-config-properties.xml ---> OK
classpath:alfresco/web-client-config-navigation.xml ---> OK
classpath:alfresco/web-client-config-wcm.xml ---> OK
classpath:alfresco/web-client-config-actions.xml ---> OK
classpath:alfresco/web-client-config-forum-actions.xml ---> OK
classpath:alfresco/web-client-config-wcm-actions.xml ---> OK
classpath:alfresco/web-client-config-workflow-actions.xml ---> OK
classpath:alfresco/extension/web-client-config-custom.xml ---> Skipped - not available
workspace://SpacesStore/app:company_home/app:dictionary/app:webclient_extension/cm:web-client-config-custom.xml ---> OK

Esta consola nos permite hacer tareas de bajo nivel sobre la AVM (Advanced Versioning Manager), sistema usado por Alfresco WCM, posiblemente la consola más desconocida y compleja de utilizar. AVM Console cuenta con una ayuda (http://localhost:8080/alfresco/faces/jsp/admin/avm-console-help.txt) aunque tenemos más información aquí y aquí.

Este es el más conocido ya que es accesible desde la “Consola de Administración”. Es una herramienta muy útil para desarrolladores y administradores. Permite hacer búsquedas y localizar información extendida sobre los contenidos del repositorio. Soporta búsquedas de varios tipos:

  1. noderef, por ejemplo workspace://SpacesStore/3d9b49aa-54b5-41b7-8842-eecde41a9b73
  2. xpath
  3. lucene
  4. fts-alfresco (full text search)
  5. cmis-strict
  6. cmis-alfresco
  7. selectnodes.

Posiblemente el mejor amigo de un programador de workflows. Esta consola es una caja de herramientas completa para depurar nuestros workflows. Más info y sintaxis aquí.

Consola para gestión, creación y borrado, activación/desactivación, exportación e importación de tenants. Recuerda que para activar el multitenant en Alfresco hay que renombrar sin .sample los ficheros en tomcat/shared/classes/alfresco/extension/mt y reiniciar el servidor.
Otras URLs interesantes dentro de nuestro sistema:

Aquí no voy a explicar nada, ejecútala espera unos segundos y mira. ¿Interesante verdad?

Esta nos sirve para ver todos los WebScripts disponibles, información de uso de cada uno de ellos y además podremos desplegar nuevos WebScripts.

¡Que curioso! Cuando he terminado de escribir el artículo he hecho una búsqueda en Google y me encuentro esto, un post del gran Jeff Potts sobre esto mismo…

Actualización 27 Mayo 2014:

A esos que cito habría que añadir:

http://localhost:8080/alfresco/service/enterprise/admin -> Consola de Administración desde 4.2 (configuración de cluster, ldap, mail, etc. via web). Solo Alfresco Enterprise.

http://localhost:8080/share/service/index -> web scripts de Alfresco Share

http://localhost:8080/alfresco/activiti-admin -> Activiti Admin para Alfresco Enterprise

http://localhost:8080/share/page/modules/deploy -> Despliegue y control de módulos en Share

http://localhost:8080/alfresco/service/cmis/index.html -> CMIS panel

Adicionalmente para Alfresco Enterprise desde la 4.2 hay un módulo muy útil que se llama Alfresco Support Tools, se puede encontrar aquí:

https://addons.alfresco.com/addons/support-tools-admin-console

Integración de Alfresco con el correo electrónico

Se oye mucho de la integración de Alfresco con el correo electrónico, que si enviar correos, que si recibir, que si almacenamiento automático, que si clasificación automática, que si acceso IMAP con Oultook (Windows), Mail (Mac) o Thunderbird (Linux).

Vamos por partes, veremos como funciona el correo saliente, correo entrante y acceso por IMAP.

Correo saliente:

O lo que es lo mismo, cuando Alfresco envía un correo electrónico a un usuario por una invitación, notificación, desde una regla o acción, etc. Estamos hablando del protocolo SMTP, y en este caso, configuramos Alfresco para que se conecte con un servidor de correo, un MTA. Esta conexión puede ser en claro (funcionamiento por defecto) o cifrado mediante un hack que vamos a ver también en este artículo. Todos los correos que envía Alfresco lo hace con un mismo remitente que podremos especificar, es decir, el sistema no enviará correos como si fuésemos nosotros (nuestra cuenta de usuario de Alfresco) sino con su usuario específico del servidor, en mi caso [email protected].

Envio de correo por SMTP Autenticado pero sin cifrar:

En tomcat/shared/classes/alfresco-global.properties deberemos configurar así:

#
# Outbound Email Configuration
#-------------
mail.host=smtp.dominio.com
mail.port=25
[email protected]
mail.password=contraseña
mail.encoding=UTF-8
[email protected]
mail.smtp.auth=true
mail.smtp.timeout = 25000

También puedes configurar el “mail sender” descomentando las siguientes líneas en web-client-config-custom.xml (dentro del directorio extension)

<config>
<client>
<from-email-address>[email protected]</from-email-address>
<search-max-results>100</search-max-results>
</client>
</config>

Envío de correo por SMTP Autenticado y cifrado (con Gmail por ejemplo):

Crea el siguiente fichero dentro del directorio extension:

# vi outbound-secure-mail-context.xml 
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>

<beans>
    <!--                        -->
    <!-- MAIL SERVICE           -->
    <!--                        -->

    <bean id="mailService" class="org.springframework.mail.javamail.JavaMailSenderImpl">
        <property name="host">
            <value>${mail.host}</value>
        </property>
        <property name="port">
            <value>${mail.port}</value>
        </property>
        <property name="username">
            <value>${mail.username}</value>
        </property>
        <property name="password">
            <value>${mail.password}</value>
        </property>
        <property name="defaultEncoding">
            <value>${mail.encoding}</value>
        </property>
        <property name="javaMailProperties">
            <props>
                 <prop key="mail.smtp.auth">${mail.smtp.auth}</prop>
                 <prop key="mail.smtp.timeout">${mail.smtp.timeout}</prop>
                 <prop key="mail.smtp.socketFactory.port">${mail.smtp.socketFactory.port}</prop>
                 <prop key="mail.smtp.socketFactory.class">${mail.smtp.socketFactory.class}</prop>
                 <prop key="mail.smtp.socketFactory.fallback">${mail.smtp.socketFactory.fallback}</prop>
            </props>
        </property>
    </bean>
</beans>

En tomcat/shared/classes/alfresco-global.properties deberemos configurar así:

#
# Outbound Email Configuration
#-------------
mail.host=smtp.gmail.com
mail.port=465
[email protected]
mail.password=contraseña
mail.encoding=UTF-8
[email protected]
mail.smtp.auth=true
mail.smtp.socketFactory.port = 465
mail.smtp.socketFactory.class = javax.net.ssl.SSLSocketFactory
mail.smtp.socketFactory.fallback = false
mail.smtp.timeout = 25000
mail.smtp.starttls.enable = true

Para ver las trazas del correo en los logs de Alfresco deberíamos añadir la siguiente línea en log4j.properties:

log4j.logger.org.alfresco.web.bean.TemplateMailHelperBean=debug

Correo entrante:

Cuando Alfresco es capaz de recibir un correo con sus archivos adjuntos y almacenarlos en el repositorio. Aquí también se utiliza el protocolo SMTP (puerto 25/TCP). Esta funcionalidad ya está terminada y soporta reglas de correos entrantes (clasificación de ficheros adjuntos, etc) lo que aun no soporta es la conversión a html del cuerpo de los mensajes. Vamos a ver como se configura.

Para activarlo debemos editar el fichero tomcat/shared/classes/alfresco-global.properties:

# Enable/Disable the inbound email service. #The service could be used by processes other than
# the Email Server (e.g. direct RMI access) so this flag is independent of the Email Service.
#-------------
email.inbound.enabled=true
# Email Server properties
#-------------
email.server.enabled=true
email.server.port=25
email.server.domain=subdominio.blyx.com
email.inbound.unknownUser=anonymous
# A comma separated list of email REGEX patterns of allowed senders.
# If there are any values in the list then all sender email addresses
# must match. #For example:
# # .*\@alfresco\.com, .*\@alfresco\.org
# Allow anyone:
#-------------
email.server.allowed.senders=.*\@blyx\.com

En email.server.domain debemos especificar el dominio que recibirá correos del tipo [email protected], lo más cómodo es crear un subdominio y apuntar el registro MX del DNS de dicho subdominio al servidor Alfresco.

No olvides que para evitar el uso indiscriminado de Alfresco para recibir correos, hay que añadir los usuarios del sistema que queramos permitir recibir correos al grupo EMAIL_CONTRIBUTORS (Consola de Administración), estos usuarios serán los que deben añadir el Email Alias a los espacios.

Hay dos formas de enviar correos a Alfresco, a un espacio que lo hemos activado como Email Alias, por ejemplo a [email protected] o a un espacio del que conocemos su Node DBID, por ejemplo, [email protected].

Para activar y ver el Node DBID, mira este artículo, una vez activado, en los detalles de cada contenido o espacio verás el Node DBID. Para activar el Email Alias de un espacio donde quieras enviar los correos debes ejecutar una acción sobre el espacio de turno, por ejemplo “Correo” → Ver Detalles → Ejecutar una Acción → Agregar aspecto al contenido → Email Alias, hecho esto veremos un nuevo metadato en las propiedades del espacio. Ahora tenemos que editar esos metadatos pinchando en el icono de modificar que hay en la esquina superior derecha del cuadro “Propiedades”, en el campo “Alias de email” debes especificar el identificador que usarás para enviar los correos, en el caso de la captura sería [email protected]:

email-alias
Hecho esto ya podemos enviar correos a nuestro Alfresco. Cuando pueda probar suficientemente el enrutado de documentos adjuntos os lo contaré.

El correo entrante también soporta TLS como vimos en el saliente, es muy fácil de configurar, mira aquí.

Buzón de correo:

Cuando accedemos al repositorio como si de un buzón de correo IMAP se tratase (puerto 143/TCP), es decir, acceder al repositorio mediante nuestro cliente de correo favorito, ya sea Mail, Thunderbird, Outlook u otro. Información extraída de la wiki y de mis pruebas.

Vamos a ver como activar IMAP. Para ello, editamos alfresco-global.properties y activamos los siguientes valores. En imap.server.host debes poner el nombre completo de tu servidor o IP, será donde se levante el puerto 143:

#
# IMAP
#-------------
imap.server.enabled=true
imap.server.port=143
imap.server.host=subdominio.blyx.com

Los valores anteriores son los que establece el servidor por defecto, pero hay más opciones en tomcat/webapps/alfresco/WEB-INF/classes/alfresco/repository.properties, simplemente tenemos que copiarlos justo debajo de imap.server.host.

imap.server.attachments.extraction.enabled=true
# Default IMAP mount points
imap.config.home.store=${spaces.store}
imap.config.home.rootPath=/${spaces.company_home.childname}
imap.config.home.folderPath=Imap Home
imap.config.server.mountPoints=AlfrescoIMAP
imap.config.server.mountPoints.default.mountPointName=IMAP
imap.config.server.mountPoints.default.modeName=ARCHIVE
imap.config.server.mountPoints.default.store=${spaces.store}
imap.config.server.mountPoints.default.rootPath=/${spaces.company_home.childname}
imap.config.server.mountPoints.value.AlfrescoIMAP.mountPointName=Alfresco IMAP
imap.config.server.mountPoints.value.AlfrescoIMAP.modeName=MIXED

Hay tres modos de trabajar con IMAP en Alfresco, “ARCHIVE” que permite leer y escribir vía IMAP, “VIRTUAL” que ofrece una visión del repositorio como correos electrónicos, y “MIXED” que permite los dos anteriores, es la que está activada por defecto como ves en la configuración así como el punto de montaje “IMAP Home” está definido como “Company Home”. Las plantillas para configurar la vista de los contenidos como correos electrónicos están disponibles en Freemarker en Company Home → Data Dictionary → Imap Configs → Templates.

Para configurar el cliente de correo electrónico debemos tener en cuenta los siguientes datos:

Servidor IMAP: IP o nombre del servidor Alfresco.

Puerto: 143

Usuario: tu usuario de Alfresco.

Contraseña: tu contraseña de Alfresco.

Configuración SMTP: puedes usar otra configuración que conozcas, no aplica en este caso.

¿Como activar un Site para acceder al “Document Library” y “Links” mediante IMAP?

En nuestro “Panel de control” o “Dashboard” en Share, en el cuadro “Mis sitios” deberemos activar pinchando en el icono en forma de estrella con un sobre:

favorito-site-imap

Hecho eso y refrescando nuestra cuenta en el cliente de correo ya veremos algo como la siguiente captura:

ver-sitio-en-cliente
Vale, ¿y como subo ficheros a Alfresco mediante IMAP? Fácil, si en tu cliente de correo tienes otras cuentas de correo configuradas prueba pinchar sobre un correo y arrástrarlo a la carpeta principal de la cuenta recién configurada de AlfrescoIMAP, el correo electrónico y sus ficheros adjuntos subirán a Company Home → IMAP Home → Usuario → INBOX, veríamos algo como lo siguiente en Alfresco Explorer:

vista-inbox-en-alfresco-explorer

También podemos arrastrar a cualquier otra carpeta de Alfresco a la que tengamos acceso de escritura mediante IMAP, como por ejemplo el DocumentLibrary de cualquiera de nuestros Sites en Alfresco Share, mira esto.

Puede ser cómodo para almacenar correos en Alfresco de forma rápida, simplemente pinchando, arrastrando y soltando, como dicen los guiris “drag and drop” 😉

He intentado cubrir todos las posibilidades con el correo electrónico y espero que haya sido claro en las explicaciones. Perdonad la maquetación del artículo. Como siempre, los comentarios están abiertos a vuestras sugerencias, correcciones y demás.

Nueva interfaz para iPhone en Alfresco Labs 3.2

Como ya dijimos en su momento, Alfresco 3.2 traería muchas novedades. Una de las más interesantes es la nueva interfaz para dispositivos móviles y claramente diseñado para iPhone, un nuevo webclient orientado a estos dispositivos. Aunque aún está muy verde no deja de ser toda una declaración de intenciones.

Puedes descargar la versión 3.2 de Alfresco aquí, instalarla en menos de 5 minutos y probar, desde tu teléfono móvil la siguiente URL: http://IP-servidor:8080/mobile/p (importante la p al final). Estas son unas capturas hechas con mi iPhone hace unos minutos:

Pantalla de login:

foto

Pantalla principal:

foto2foto3

Puedes ver el listado completo de novedades y mejoras aquí.

Digitalización, scanning y OCR con Alfresco

alfresco-logoEn el paradigma “oficina sin papeles”, intervienen muchos actores, siendo los principales las personas, que deben ajustarse a una serie de procedimientos y metodologías, y los sistemas de información, que deben proveer soluciones al paradigma.

En cuanto a complejidad, un proyecto de “Paperless Office” es tan difícil y en ocasiones frustrante como un proyecto de “Single Sign” o “Identity Management” en grandes organizaciones consolidadas ya sean públicas o privadas. El problema principal son, por un lado las soluciones Open Source de calidad, que no son muchas, los requerimientos técnicos del cliente dados muchas veces por aplicaciones obsoletas y heredadas.

Con Alfresco, gracias a características como el soporte CIFS, Webdav, reglas, transformación de formatos, workflow o indexación, conseguimos aproximarnos a nuestro objetivo, aunque en una oficina sin papeles necesitaríamos integrarnos con otras soluciones como firma digital, etc, que ya contemplaré algún día por estos lares.

En este caso me gustaría contar qué puede hacer Alfresco por nosotros en cuanto a digitalización de documentos, escaneo masivo (bulk scan) y OCR:

a) Ad-hoc scanning: usando CIFS o Webdav con la extracción de metadatos automática (por defecto). La mayoría de las impresoras/escaner multifunción modernas de oficina y de cierta envergadura soporta montar volúmenes remotos (conectarse a carpetas de red) para colocar la documentación escaneada. También podríamos hacerlo desde un escaner conectado a nuestra estación de trabajo. De esta forma se almacenarían los documentos directamente en Alfresco y posteriormente se pueden lanzar workflows, transformaciones, reglas, etc. Por ejemplo, una hoja de gastos, hoja de reclamaciones, actas, pedidos de clientes, documentos de identificación en puestos de control, etc.

En el caso anterior, que hemos llamado Ad-hoc scanning, no se contempla indexación del contenido de los documentos ya que estas grandes impresoras por defecto no hacen reconocimiento de texto (OCR), por lo que el documento escaneado, aun conteniendo texto, sería como una imagen. Para salvar este escollo se puede integrar con Alfresco una solución gratuita llamada Intelliant, basada en la SDK de Tiger OCR. Esta solución, que sólo funciona si el servidor Alfresco está instalado en un sistema operativo MS Windows, nos permitirá, a través de reglas y transformaciones, extraer todo el texto de un documento escaneado de forma que se pueda indexar y podamos hacer búsquedas por el contenido, algo realmente cómodo.

b) Batch scanning: Cuando necesitamos escanear cientos de documentos tipo plantilla, por ejemplo hojas de matrícula, facturas, exámenes, etc, y de éstos documentos queremos extraer la información y poder vincularla a metadatos de Alfresco, ya sea del modelo de datos por defecto o de un modelo personalizado, necesitaremos una solución que permita mapear la información existente en la plantilla/documento escaneado de turno, con un tipo de contenido de Alfresco, campo del documento con un metadato en Alfresco, etc. Esta solución se llama Kofax Ascent Capture, Alfresco dispone de un plugin gratuito y disponible en la forja de Alfresco [http://forge.alfresco.com]. Este software utiliza la API de WebServices de Alfresco para realizar su trabajo. El plugin sólo funciona en MS Windows.

Kofax Ascent Capture tiene las siguientes características (fuente):

  • Corrección y mejora automática de imágenes.
  • Separado automático de documentos e identificación automática de formularios.
  • OCR, ICR y OMR para reconocimiento de texto impreso o escrito a mano en cientos de idiomas, códigos de barras y otros tipos de códigos.
  • Certificado para funcionar con la mayoría de scanners, ver listado.
  • Integración con Alfresco y gestión de procesos de negocio.

La opción a) es completamente gratuita y la opción b) depende del propio software Kofax Ascent Capture, que no es gratuito.

Hay otras soluciones como usar un escaner con soporte eCopy, cuyo conector con Alfresco ha sido desarrollado por SIRA Systems. Este conector permite a un usuario escanear un documento y ponerlo directamente en Alfresco. Este software se instala en el escaner y hace de interfaz entre el escaner y Alfresco. Sería una solución del tipo a) ya que no contempla selección ni mapeo de datos de los documentos escaneados, aunque si permite la indexación del contenido ya que incorpora un OCR, esta solución cuesta 2.495USD. Más información sobre el conector de SIRA Systems aquí.

Alfresco: Edición online de documentos ¿para ricos? Por ahora si.

alfresco-logoLa nueva versión de Alfresco Enterprise, la 3.1, soporta la edición en linea de documentos ofimáticos, pero sólo de MS Office 2007. Es una funcionalidad que no realiza por defecto, aunque desde hace tiempo si permite editar en linea ficheros de tipo XML, HTML, JS o TXT. En el caso de documentos ofimáticos hay que activar la edición online por Webdav o CIFS y para conseguirlo hay que modificar el archivo web-client-config-custom.xml que se encuentra en:

JBoss: <alfresco>/jboss/server/default/conf/alfresco/extension
Tomcat: <alfresco>/tomcat/shared/classes/alfresco/extension

Y modificar o añadir la siguiente directiva:

<config>
    <client>
         <!-- the type of edit link to use, NOTE: inline editable will always take precedence -->
         <!-- can be: http|webdav|cifs -->
         <edit-link-type>webdav</edit-link-type>
    </client>
</config>

También podríamos activarlo vía CIFS pero Webdav es más versátil ya que funciona fuera de la red local (vía Internet por ejemplo). Una vez modificada esa opción, deberemos reiniciar el servidor de aplicaciones y acceder con el cliente web. Para ejecutar la edición online:

screen-capture

Tras varias pruebas hemos conseguido que la edición online de documentos de ofimática funciona correctamente pero con salvedades importantes, es decir, sólo funciona con el siguiente entorno y requisitos:

-Los documentos a editar online pueden ser: .doc/x, .xsl/x, .ppt/x
-La suite ofimática debe ser MS Office 2007.
-Alfresco Enterprise 3.1.

Hemos probado con Linux/Windows y OpenOffice pero no funciona ya que OpenOffice no implementa el cliente webdav y MS Office si.

Es una funcionalidad bastante atractiva para entornos del tipo M$ Windows + M$ Office como es el caso de muchas compañías y organismos públicos que, lamentablemente, usan plataformas privativas. En entornos libres esta funcionalidad no sirve para nada (no funciona). Aunque Alfresco brinda otras posibilidades para conseguir trabajar directamente en el repositorio independientemente del Sistema Operativo o navegador del usuario.

Entonces ¿de quién es la culpa? No creo que se trate de buscar culpables, pero por desgracia y aunque me pese mucho aceptarlo M$ Office lleva varias vueltas de ventaja a Open Office y tras la compra de Sun por parte de Oracle, no sé si OO.org se quedará en boxes para salir con ruedas nuevas y a tope de gasolina o se quedará en boxes para siempre. De cualquier forma como dijo el principal desarrollador de squid a un usuario “Free software only dies when the last copy of the source code is erased”.

Revisión a la nueva versión de Alfresco: Alfresco Labs 3.0b

Alfresco es la alternativa de Código Abierto para la gestión de contenido empresarial (ECM), proporcionando gestión documental, colaboración, gestión de registros, gestión de información, gestión del contenido web e imágenes.

Como alguno ya sabrá, Intecna es partner Platinum de Alfresco además de ser Trainin Partner, estamos trabajando continuamente con este producto y otros similares de los que ya hablé en su momento. Por ello bastante tiempo lo dedico a analizar este producto, comprenderlo y enseñarlo.

Bueno, a lo que vamos. Alfresco Labs, antes llamado Alfresco Community Edition, ha sido liberado recientemente en su versión 3.0b para pruebas/laboratorio ya que es inestable y se genera cada noche a partir del estado del código en ese momento. La versión 3.0 estable, llamada Enterprise cuyo uso es por suscripción de soporte, saldrá a finales de Octubre de este año.

Ya la he estado analizándolo y entre las novedades más importantes a destacar se encuentran las siguientes:

-Compatibilidad con el protocolo de Microsoft Office SharePoint sin necesidad de instalación de cliente adicional. Esto ha sido posible ya que la Unión Europea obligó a Microsoft a abrir el protocolo de SharePoint en un dictamen emitido en marzo de 2004. Alfresco, como compañía y producto innovador no se lo pensó dos veces y se pusieron manos a la obra por lo que ahora es la primera solución ECM de Código Abierto que soporta compatibilidad los protocolos de Microsoft Office y Windows SharePoint Services. Esto significa que será sencillo integrar como hasta ahora, aplicaciones en Linux, Java y también en .NET.

-La plataforma Alfresco Surf para crear aplicaciones web dinámicas y orientadas a REST así como sitios web de colaboración. Alfresco Surf es como han llamado al conjunto de plantillas y comandos en Web Scripts con la que se ha realizado la parte “/share” de la que hablaré más abajo. Todo esto sumado a algunas librerías de Yahoo y Adobe Flash tenemos como resultado la funcionalidad tan esperada de subir, vía web, múltiples ficheros.

-Servicios de contenido de envío y colaboración de RESTful API para personalizar y desarrollar aplicaciones de Alfresco.

-Previsualización de Alfresco Share, una nueva aplicación informática social. Antes solo existía el contexto “/alfresco”, ahora sigue existiendo ese contexto, el webcliente de Alfresco, con el mismo diseño que antes aunque con algunas novedades pero hay un nuevo contexto llamado “/share” que es algo así como un portal personal donde también pueden residir portales departamentales, grupos, áreas, etc. Sin duda una gran herramienta para intranets y extranets corporativas, también sirve para eso que llaman “Social Computing” ya que incorpora site activities, tagging, comentarios, thumbnails, blogs, wikis y foros.

-La versión 3.0b Labs de Alfresco ya incorpora las especificaciones del borrador CMIS. CMIS  (Content Management Interoperability Services) es un estándar anunciado en septiembre de 2008 que ha sido desarrollado por IBM, EMC, Microsoft, Alfresco, OpenText, Oracle y SAP. Dicho estándar intenta regular varios aspectos como los modelos de dominio, API, Web Services y el protocolo de publicación REST/ATOM. Más información aquí.

-Biblioteca de documentos soporta 100 millones de documentos.

-En la instalación por defecto se monta Derby, base de datos en Java, en detrimento de Hypersonic como venía siendo hasta ahora.

Más información, en la wiki de Alfresco.