Curso Alfresco e Ghost

download Curso Alfresco e Ghost

If you can't read please download the document

Transcript of Curso Alfresco e Ghost

Curso Introduccin a Alfresco

Guillermo Rodrguez

I. Introduccin

I. Introduccin

ndiceQu es un gestor documental? Introduccin a Alfresco (qu es y un poco de historia...) Caractersticas de Alfresco Licencia

I. Introduccin

Qu es un gestor documental?Un Gestor Documental (Document Management System) es un programa que permite gestionar grandes cantidades de documentos electrnicos. Los sistemas de gestin documental normalmente proporcionan almacenaje, seguridad, flujos de trabajo, versionado, as como capacidades de recuperacin e indexacin. El concepto de Gestor Documental a diferencia de un Gestor de Contenidos (Content Management System) se centra en los documentos.

I. Introduccin

Introduccin a AlfrescoQu es Alfresco?Sistema de gestin documental libre basado en estndares abiertos.

Un poco de historia...Fundado en 2005 por John Newton, cofundador de Documentum y John Powell, ex COO de Business Objects. Sus principales inversores son Accel Partners, Mayfield Fund y SAP. El staff tcnico original estaba compuesto por ingenieros provenientes de Documentum y Oracle.

I. Introduccin

Caractersticas de Alfresco IDesde el punto de vista del usuario:Interfaz web Unidad compartida Control de versiones Bsquedas Integracin con portales existentes Integracin con Office Reglas de contenidos Etiquetado Flujos de trabajo

I. Introduccin

Caractersticas de Alfresco IIDesde el punto de vista del desarrollador/admin:Basado en estndares abiertos Programado en Java Scripts ligeros (JavaScript y Freemarker) Arquitectura REST Motor de indexacin Lucene Motor de flujos de trabajo jBPM Sin instalacin en el cliente Interfaces CIFS, WebDAV, FTP, IMAP Seguridad (usuarios, grupos, roles, integracin LDAP/AD) Motor de transformacin de datos (OpenOffice y SWFTools)

I. Introduccin

LicenciaVersiones

Existen dos versiones de Alfresco: Community Soportada por la comunidad Enterprise Suscripcin Certificado Asistencia tcnica Alfresco Network

II. Alfresco Web Content Management

II. Alfresco Web Content Management

Pantalla inicial

II. Alfresco Web Content Management

Pantalla inicio sesin

II. Alfresco Web Content Management

My Alfresco

II. Alfresco Web Content Management

Company Home

II. Alfresco Web Content Management

My Home

II. Alfresco Web Content Management

Guest Home

II. Alfresco Web Content Management

Configuracin pantalla inicial I

II. Alfresco Web Content Management

Configuracin pantalla inicial II

II. Alfresco Web Content Management

Configuracin pantalla inicial III

II. Alfresco Web Content Management

Consola de administracin

II. Alfresco Web Content Management

Administracin de usuarios

II. Alfresco Web Content Management

Creacin de usuarios I

II. Alfresco Web Content Management

Creacin de usuarios II

II. Alfresco Web Content Management

Creacin de usuarios III

II. Alfresco Web Content Management

Prueba login nuevo usuario

II. Alfresco Web Content Management

Creacin de espacios I

II. Alfresco Web Content Management

Creacin de espacios II

II. Alfresco Web Content Management

Creacin de contenidos I

II. Alfresco Web Content Management

Creacin de contenidos II

II. Alfresco Web Content Management

Creacin de contenidos III

II. Alfresco Web Content Management

Creacin de contenidos IV

II. Alfresco Web Content Management

Propiedades de los contenidos I

II. Alfresco Web Content Management

Propiedades de los contenidos II

II. Alfresco Web Content Management

Flujos de trabajo I

II. Alfresco Web Content Management

Flujos de trabajo II

II. Alfresco Web Content Management

Flujos de trabajo III

II. Alfresco Web Content Management

Flujos de trabajo IV

II. Alfresco Web Content Management

Flujos de trabajo VI

II. Alfresco Web Content Management

Flujos de trabajo VII

II. Alfresco Web Content Management

Invitar usuarios a un espacio I

II. Alfresco Web Content Management

Invitar usuarios a un espacio II

II. Alfresco Web Content Management

Administrar usuarios de un espacio

II. Alfresco Web Content Management

Crear reglas en un espacio I

II. Alfresco Web Content Management

Crear reglas en un espacio II

II. Alfresco Web Content Management

Crear reglas en un espacio III

II. Alfresco Web Content Management

Crear reglas en un espacio IV

II. Alfresco Web Content Management

Administrar reglas de un espacio

II. Alfresco Web Content Management

Bsqueda Avanzada

III. Alfresco Share

III. Alfresco Share

Introduccin

Pantalla inicial Consola de administracin Crear sitio nuevo Configuracin del sitio Funcionalidades (wiki, blog, bibiloteca de documentos, calendario, enlaces, foro)

III. Alfresco Share

Inicio de sesin

III. Alfresco Share

Pantalla inicial

III. Alfresco Share

Consola de administracin

III. Alfresco Share

Configurar pantalla inicial

III. Alfresco Share

Crear sitio nuevo I

III. Alfresco Share

Crear sitio nuevo II

III. Alfresco Share

Pantalla inicial de un sitio

III. Alfresco Share

Configuracin de un sitio

III. Alfresco Share

Invitar a un usuario a un sitio

III. Alfresco Share

Wiki

III. Alfresco Share

Blog

III. Alfresco Share

Biblioteca de documentos

III. Alfresco Share

Calendario

III. Alfresco Share

Enlaces

III. Alfresco Share

Foro

III. Alfresco Share

Listados de datos

III. Alfresco Share

Usuarios del sitio

IV. Instalacin y Configuracin

IV. Instalacin y Configuracin

Introduccin

Obtener Alfresco Antes de empezar Ejecutar el instalador Configuracin Instalar SWFTools Buscar programas (SWFTools, OpenOffice) Archivo alfresco-global.properties Notificaciones por correo electrnico Traducir interfaz Varios...

IV. Instalacin y Configuracin

Obtener Alfresco

Pgina de descarga: http://wiki.alfresco.com/wiki/Download_and_Insta ll_Alfresco En este curso de utilizar la versin Alfresco Community 3.3: http://www.alfresco.com/elqNow/elqRedir.htm? ref=http://dl.alfresco.com/release/community/buil d-2860/Alfresco-Community-3.3g-Linux-x86Install?dl_file=release/community/build2860/Alfresco-Community-3.3g-Linux-x86-Install

IV. Instalacin y Configuracin

Antes de empezar

Instalar: $ sudo aptitude install sun-java6-jdk imagemagick libjpeg-dev Arrancar OpenOffice en modo headless : $ /usr/lib/openoffice/program/soffice "accept=socket,host=localhost,port=8100;urp;S tarOffice.ServiceManager" -nologo -headless -nofirststartwizard

IV. Instalacin y Configuracin

Ejecutar el instalador

Dar permisos de ejecucin: $ chmod +x Alfresco-Community-3.3g-Linuxx86-Install Ejecutar: $ ./Alfresco-Community-3.3g-Linux-x86-Install

IV. Instalacin y Configuracin

Instalacin I

IV. Instalacin y Configuracin

Instalacin II

IV. Instalacin y Configuracin

Instalacin III

IV. Instalacin y Configuracin

Instalacin IV

IV. Instalacin y Configuracin

Instalacin V

IV. Instalacin y Configuracin

Instalacin VI

IV. Instalacin y Configuracin

Instalacin VII

IV. Instalacin y Configuracin

Instalacin VIII

IV. Instalacin y Configuracin

Instalacin IX

IV. Instalacin y Configuracin

Instalacin X

IV. Instalacin y Configuracin

Instalacin XI

IV. Instalacin y Configuracin

Instalacin XII

IV. Instalacin y Configuracin

Instalacin XIII

IV. Instalacin y Configuracin

Instalacin XIV

IV. Instalacin y Configuracin

Instalacin XV

IV. Instalacin y Configuracin

Instalar SWFTools

Obtener SWFTools: http://www.swftools.org/download.html (descargar versin 0.9 o superior) Instalar $ tar xzf swftools-0.9.1.tar.gz $ cd swftools-0.9.1/ $ ./configure $ make $ sudo make install

IV. Instalacin y Configuracin

Buscar programas

Buscar comandos de SWFTools: $ whereis pdf2swf pdf2swf: /usr/local/bin/pdf2swf (Hay que poner la ruta completa) $ whereis convert Convert: /usr/bin/convert/usr/share/man/man1/convert.1.gz (Hay que poner la carpeta root, donde se encuentra la carpeta bin) Buscar comando OpenOffice $ whereis soffice soffice: /usr/bin/soffice (Hay que poner la ruta completa y tener cuidad con la ruta a ooo.user, ya que hay un bug en el instalador para Debian)

IV. Instalacin y Configuracin

Archivo alfresco-global.properties IEl archivo alfresco-global.properties es el principal archivo de configuracin de Alfresco. Los elementos bsicos de configuracin son: Directorio con los datos (alf_data) Configuracin de la conexin a la B.D. Programas externos Correo electrnico

IV. Instalacin y Configuracin

Archivo alfresco-global.properties IIConfiguracin de los programas externos: $ vim tomcat/shared/classes/alfresco-global.properties# # External locations # ----------------------ooo.exe=/usr/bin/soffice ooo.user=/home/willy/trabajo/charlas/alfresco_eghost_2010/alfresco33c/alf_data /oouser jodconverter.officeHome=/home/willy/trabajo/charlas/alfresco_eghost_2010/alfre sco33c jodconverter.portNumbers=8101 #ooo.enabled=false #jodconverter.enabled=true img.root=/usr swf.exe=/usr/local/bin/pdf2swf

IV. Instalacin y Configuracin

Notificaciones por correo electrnicoConfiguracin de envo de notificaciones: $ vim tomcat/shared/classes/alfresco-global.properties # # Sample Gmail settings # -----------------------------------mail.host=smtp.gmail.com mail.port=465 mail.protocol=smtps [email protected] mail.password=miconstrasea # New Properties mail.smtps.starttls.enable=true mail.smtps.auth=true

IV. Instalacin y Configuracin

Traducir el interfaz

Descargar archivo de traducciones: http://forge.alfresco.com/projects/alfrescoeses/ Descomprimir: alfresco_3.2_ES-beta1/messages en tomcat/shared/classes/alfresco/messages alfresco_3.2_ES-beta1/web-extension en tomcat/shared/classes/alfresco/web-extension

IV. Instalacin y Configuracin

Varios

Archivo de log: $ vim alfresco.log Cambiar el modo de ejecucin para que se muestre en la consola en la que lo ejecutamos: $ vim tomcat/bin/startup.sh Al final del archivo cambiar: exec "$PRGDIR"/"$EXECUTABLE" start "$@" Por: exec "$PRGDIR"/"$EXECUTABLE" run "$@" PermGenSizeError $ vim tomcat/bin/startup.sh Aadir al principio la linea: JAVA_OPTS = "${JAVA_OPTS} -XX:PermSize=512m -XX:MaxPermSize=512m"

V. Desarrollo sobre Alfresco

V. Desarrollo sobre Alfresco

Introduccin

Instalacin Alfresco SDK Integracin con Eclipse Definicin de un modelo de datos Visualizacin del modelo de datos Acciones Flujos de trabajo

V. Desarrollo sobre Alfresco

Instalacin Alfresco SDKPrerequisitos: JDK 1.6.x Eclipse IDE 3.2+ MySql 1.5.0.67 Descargar: http://sourceforge.net/projects/alfresco/files/SDK/ Descomprimirlo (no requiere ms instalacin)

V. Desarrollo sobre Alfresco

Integracin con Eclipse IUtilizar Eclipse con Java 6 Men: Window -> Preferences En el rbol: Java -> Compiler Seleccionar 1.6 en la opcin Compiler compliance level y dar a OK Importar los proyectos de Alfresco en Eclipse Men: File -> Import Seleccionar: General -> Exisiting projects into workspace Seleccionar el directiorio donde est el SDK de Alfresco

V. Desarrollo sobre Alfresco

Integracin con Eclipse II

V. Desarrollo sobre Alfresco

Integracin con Eclipse III

V. Desarrollo sobre Alfresco

Definicin de un modelo de datos IEntorno de extensin de Alfresco WCM: tomcat/shared/classes/alfresco/extension Hay que crear un archivo mi-modelo-context.xml que Alfresco lee al iniciar (Spring) en omcat/shared/classes/alfresco/. En dicho archivo hay que indicar qu fichero contendr el modelo de datos.

V. Desarrollo sobre Alfresco

Definicin de un modelo de datos II$ vim tomcat/shared/classes/alfresco/extension/mi-modelocontext.xml alfresco/extension/customModel.xml

V. Desarrollo sobre Alfresco

Definicin de un modelo de datos IIIPara definir el modelo: Editar el archivo customModel.xml Indicar nombre del modelo Definir Imports Definir namespaces Definir tipos de contenido con sus propiedades

V. Desarrollo sobre Alfresco

Definicin de un modelo de datos IV Custom Model Guillermo 1.0 (...)

V. Desarrollo sobre Alfresco()

Definicin de un modelo de datos V Expediente cm:content d:text d:text true

V. Desarrollo sobre Alfresco

Visualizacin del modelo de datos ISe ha definido el modelo de datos, pero hay que indicar cmo se debe mostrar ese modelo. Para hacerlo, hay que editar el archivo web-clientconfig-custom.xml:$ vim tomcat/shared/classes/alfresco/extension/web-clientconfig-custom.xml

V. Desarrollo sobre Alfresco

Visualizacin del modelo de datos I (...)

V. Desarrollo sobre Alfresco()

Visualizacin del modelo de datos II {custom.model}codigo {custom.model}relacionados (...)

V. Desarrollo sobre Alfresco

Visualizacin del modelo de datos II(...)

V. Desarrollo sobre Alfresco

Acciones I

Para crear una accin se toma como referencia el proyecto SDK CustomAction. El proyecto contiene: archivo xml que define qu clase implementa la accin (logger-action-context.xml) la propia clase (LoggerActionExecuter.java) se puden aadir archivos de propiedades con las cadenas de texto (logger-actionmessages.properties)

V. Desarrollo sobre Alfresco

Acciones II

hello-world-action-context.xml:

org.alfresco.sample.hello-world-action-messages

V. Desarrollo sobre Alfresco

Acciones III

HelloWorldActionExecuter.java:

public class HelloWorldActionExecuter extends ActionExecuterAbstractBase { /** The name of the action */ public static final String NAME = "hello-world-action"; @Override protected void executeImpl(Action action, NodeRef actionedUponNodeRef) { System.out.println("Hello World!!!"); } @Override protected void addParameterDefinitions(List paramList) { }

}

V. Desarrollo sobre Alfresco

Acciones IV

hello-world-action-messages.properties:# Action title and description hello-world-action.title=Hello World Action hello-world-action.description=This action says hello to the world.

Despligue de la accin: El archivo hello-world-action-context.xml se debe pegar en la carpeta tomcat/shared/classes/alfresco/extension El jar que contiene tanto la clase de Java compilada como el archivo de propiedades hay que copiarlo en tomcat/webapps/alfresco/WEB-INF/lib

V. Desarrollo sobre Alfresco

Flujos de trabajo I

Alfresco utiliza el motor jBMP. Existe un plugin para Eclipse. Descargar jbpm-jpdl-3.2.3 de: http://sourceforge.net/projects/jbpm/files/ Descomprimir el contenido de la carpeta designer/eclipse en la raz de Eclipse y arrancar Ecplise. Se podrn crear proyectos de tipo JbossJBPM.

V. Desarrollo sobre Alfresco

Flujos de trabajo II

Crear el proyecto: Nuevo -> Proyecto -> JBoss JBPM -> Process Project Hay que darle un nombre y asignarle un motor jBPM (seleccionando la carpeta donde se ha descomprimido el archivo jbpm-jpdl). Para poder desplegarlo directamente hay que editar el archivo processdefinition.xml. En la pestaa deployment hay que introducir los datos de conexin del servidor poniendo /alfresco/jbpm/deployprocess en la opcin Server Deployer.

V. Desarrollo sobre Alfresco

Flujos de trabajo III

Pestaas del archivo processdefinition.xml: Diagram: representacin grfica del flujo de trabajo, se pueden crear acciones y transiciones visualmente (bastante til aunque tiene algunos fallos) Deployment: se puede utilizar para desplegar directamente el workflow en el servidor Design: vista del archivo xml en rbol Source: archivo xml

V. Desarrollo sobre Alfresco

Definicin de un flujo de trabajo IElementos destacados de un flujo de trabajo: Estados: existir un estado inicial (start-state) y otro final (end-state), as como los estados intermedios. Los estados se componen de tareas (task) y transiciones (transition). Actores (swimlane): los flujos de trabajo pueden ser asignados, tanto a usuarios como a grupos. Eventos: pueden realizarse acciones cuando se den ciertos eventos.

V. Desarrollo sobre Alfresco

Definicin de un flujo de trabajo II Going to the first state!

(...)

V. Desarrollo sobre Alfresco

Definicin de un flujo de trabajo III() #{bpm_assignee} (...)

V. Desarrollo sobre Alfresco(...)

Definicin de un flujo de trabajo IV if (bpm_workflowDueDate != void) taskInstance.dueDate = bpm_workflowDueDate; if (bpm_workflowPriority != void) taskInstance.priority = bpm_workflowPriority; Going to the second state!

(...)

V. Desarrollo sobre Alfresco(...)

Definicin de un flujo de trabajo VI Going to the last state! The End!!!

V. Desarrollo sobre Alfresco

Modelo de datos I

Adems de crear el flujo de trabajo en formato BPM, es necesario mapear los estados que estemos usando en dicho workflow con un modelo de datos de Alfresco. Hay que editar el archivo mi-modelo-context.xml incliur el nuevo modelo:$ vim tomcat/shared/classes/alfresco/extension/mi-modelocontext.xml

Aadimos: alfresco/extension/workflowModel.xml

V. Desarrollo sobre Alfresco

Modelo de datos II

alfresco/extension/customModel.xml alfresco/extension/workflowModel.xml

V. Desarrollo sobre Alfresco

Modelo de datos III

$ vim tomcat/shared/classes/alfresco/extension/workflowModel.xml Workflow Model Guillermo 1.0

(...)

V. Desarrollo sobre Alfresco

Modelo de datos IV(...)

bpm:startTask bpm:assignee

(...)

V. Desarrollo sobre Alfresco

Modelo de datos V(...)

bpm:workflowTask add_package_item_actions edit_package_item_actions

(...)

V. Desarrollo sobre Alfresco

Modelo de datos VI

(...) bpm:workflowTask

Adems, hay que reflejarlo en el archivo web-client-configcustom.xml$ vim tomcat/shared/classes/alfresco/extension/web-clientconfig-custom.xml

V. Desarrollo sobre Alfresco

Viusalizacin del modelo de datos I

(...)

V. Desarrollo sobre Alfresco(...)

Viusalizacin del modelo de datos II

Anexo

EnlacesAlfresco http://www.alfresco.com Gestor Documental en Wikipedia: http://es.wikipedia.org/wiki/Software_de_gestin_documental