Open IT Experts for Enterprise

Zylk empresa de desarrollo de ecommerce

Usando la Document library de Liferay Portal

Cesar Capillas
Cesar Capillas

Uno de los portlets básicos en Liferay Portal es la denominada
Document Library o biblioteca de documentos. Es un portlet esencial
junto a los portlets de gestión de contenidos dentro del gestor de
portales, que aloja los documentos que disponemos en nuestras
comunidades públicas o privadas.

Existen varias opciones para el albergue de los documentos en Liferay:

1. La primera de ellas es lo que se denomina el FileSystemHook
(a veces Advanced FileSystem Hook) y aloja los documentos en el
sistema de ficheros. Esta es la opción por defecto de Liferay Portal y
el método recomendado por Liferay cuando hay cantidades ingentes de
archivos. Para ello es necesario configurar en el archivo
portal-ext.properties los siguientes directorios. En una configuración
de tipo cluster lo usual sería compartir estos directorios entre los
diferentes nodos.

###
### Filesystem Hook
###

   
image.hook.file.system.root.dir=${liferay.home}/data/images
    dl.hook.file.system.root.dir=${liferay.home}/data/document_library

2. La segunda opción es un repositorio JSR-170 (Jackrabbit).
Estos son los siguientes parámetros de configuración en el portal-ext.properties:

##
## JCR
##

   
dl.hook.impl=com.liferay.document.library.util.JCRHook
   
jcr.initialize.on.startup=false
   
jcr.workspace.name=liferay
   
jcr.node.documentlibrary=documentlibrary
   
jcr.jackrabbit.repository.root=${liferay.home}/data/jackrabbit
   
jcr.jackrabbit.config.file.path=${jcr.jackrabbit.repository.root}/repository.xml
   
jcr.jackrabbit.repository.home=${jcr.jackrabbit.repository.root}/home
    jcr.jackrabbit.credentials.username=none
    jcr.jackrabbit.credentials.password=none

Y editar el fichero de configuración repository.xml alojado en jcr.jackrabbit.repository.root

Por su parte, en un entorno clusterizado se recomienda no
guardar jcr en filesystem, por problemas de corrupción de datos, sino
utilizar una base de datos. En este caso, se configura Liferay en cada
nodo apuntando hacia una misma base de datos que se habilita en la
configuración de cluster en el archivo repository.xml (podeis ver un
ejemplo de este archivo de configuración en
el siguiente enlace
)

3. La tercera es a través del CMISHook
que incorpora la nueva versión de Liferay 6 (todavía en RC), que
permite guardar los documentos en un gestor documental CMIS 1.0 como
Alfresco 3.2r2 y 3.3 Community, y Alfresco 3.2 y 3.3 Enterprise. La
estructura se guarda en nodos del tipo Liferay Home -> 10130 ->
10274 -> 1 -> 1.0 donde se guarda la instancia del portal, la
información de grupo (comunidad y organizacion), el id del documento y
la versión.

###
### CMISHook
###

dl.hook.impl=com.liferay.documentlibrary.util.CMISHook
cmis.credentials.username=Administrator
cmis.credentials.password=Administrator
cmis.repository.url=https://alfie.zylk.net/alfresco/service/cmis
cmis.repository.version=1.0
cmis.system.root.dir=Liferay Home

La manera de guardar los datos en Alfresco no es excesivamente
útil desde el ECM porque no guarda la estructura de carpetas de
Liferay, siendo imposible navegar conscientemente por el repositorio
inspeccionando los archivos. Por otro lado, al no utilizar mimetypes
ni nada parecido los archivos no son indexados y de esta manera sólo
es posible buscar desde Liferay. También conviene decir que aún no es
CMIS 1.0 100%, y lo hemos visto en nuestras pruebas porque no funciona
con Nuxeo.

Nota sobre las imágenes: Las imágenes en Liferay se guardan por
defecto en la base de datos. Puedes hacer que se guarden en la
Document Library ya sea en filesystem o en el Jackrabbit.

Nota sobre file locking: Liferay no implementa file locking y
lo delega en el dispositivo de almacenamiento. Las SAN modernas suelen
incorporar esta característica.

Nota muy importante: Por cierto, no cambies la  configuración
si ya existen documentos porque se perderán. Hay que hacerlo siempre
con las bases de datos vacias.

Links:

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 *