Open IT Experts for Enterprise

Zylk empresa de desarrollo de ecommerce

Recomendaciones a la hora de implementar un modelo de contenido en Alfresco

Cesar Capillas
Cesar Capillas
Existen algunas recomendaciones más o menos generales para la
implementación de modelos de contenidos en Alfresco, que se apuntan en
la propia documentación de Alfresco y en los tutoriales como:
  1.  No cambiar el modelo por defecto de Alfresco, sino extenderlo si
    es posible.
  2.  Considera implementar un modelo base organizativo con metadatos organizativos.
  3.  Implementa lo que tu modelo necesita inicialmente, no lo
    compliques innecesariamente.
  4.  Evita una profundidad innecesaria del modelo, evitando jerarquías
    complejas de tipos documentales.
  5.  Toma ventaja de los aspectos frente a los tipos, por su
    flexibilidad y reutilización.
  6.  Puede tener sentido definir tipos lógicos que no tienen
    propiedades o asociaciones.
  7.  Recuerda que las carpetas o personas en Alfresco también son
    tipos documentales.
  8.  No tengas miedo de tener más de un modelo de contenidos.
  9.  Implementa una clase java correspondiente a cada modelo de contenido.
A la hora de implementarlos puedes:
  • Desplegarlos en caliente en Data Dictionary/models
  • Desplegarlos en el directorio extension
  • Desplegarlos mediante un JAR
  • Desplegarlos mediante un AMP
Normalmente suelo preferir durante el desarrollo desplegarlos en el
directorio de extensiones, para finalmente empaquetarlo en un AMP o
JAR, en el entorno de producción.
 
Para un modelo uso al menos seis archivos de configuración. En el
repositorio normalmente tendré tres archivos por modelo:
 
  • $ALF_HOME/tomcat/shared/alfresco/extension/zk-model-context.xml 
  • $ALF_HOME/tomcat/shared/messages/zkModel.properties
  • $ALF_HOME/tomcat/shared/alfresco/extension/model/zkModel.xml
 
En el fichero de contexto de Spring usaré una notación para los ids
relacionados con mi modelo, en este caso zylk. Por ejemplo, zk sera el
prefix del modelo de contenidos, zk aparecerá en los ids de beans de
Spring, zk aparecerá en los ficheros correspondientes.
 
En Alfresco Share tendré así mismo otros tres ficheros para los
formularios y share-config-custom.xml:
 
  • $ALF_HOME/tomcat/shared/alfresco/web-extension/zk-share-forms-context.xml
  • $ALF_HOME/tomcat/shared/alfresco/web-extension/messages/zk.properties
  • $ALF_HOME/tomcat/shared/alfresco/web-extension/forms/zk-config-custom.xml

 

Los archivos de contexto de Spring tanto en el repositorio como en
Share apuntarán a las rutas de los otros archivos. Luego es posible
que intervengan más ficheros, por ejemplo javascript, si
configuramos metadata templates.

Otras recomendaciones útiles pueden ser:
  • Si despliegas los modelos en el directorio de extensiones crea un
    directorio models por debajo de extension y de
    forms por debajo de web-extension.
  • No dispongas toda la configuración de los formularios en el
    archivo share-config-custom.xml, separa los
    formularios por tipos. Utiliza el archivo unicamente para
    share-config-custom.xml para las definiciones genéricas como alta de
    aspectos, utilización de tipos en reglas de contenido o cambiar
    tipo, y trata de no machacar onfiguraciones anteriores (no uses replace=true).
  • Es preferible que los modelos de contenidos no estén
    desplegados en Data Dictionary
    en el entorno de
    producción (al igual que webscripts o scripts js).
  • El método dinámico de despliegue de modelos es útil para comprobar
    si hay errores de sintaxis en el modelo, o si el
    modelo tiene algún error en la carga.
  • En un entorno tanto de desarrollo como de producción, es muy
    interesante separar las capas del repositorio y de Alfresco
    Share
    porque te va a permitir trabajar con formularios de
    manera más ágil.
  • No mezclar los modelos de despliegue dinámico y
    estático
    , sobre todo si se trata de los mismos modelos.
    Puede ser interesante un acceso web a los logs del repositorio para
    cuando los modelos no carguen correctamente.
Enlaces:

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 *