Desplegando modelos de contenidos en Alfresco de manera dinamica

Al hilo del interesante post de blyx.com sobre las consolas de alfresco, hoy voy a comentar como añadir dinamicamente un modelo de contenido en Alfresco, esto es sin reiniciar el servidor. Otras capacidades dinámicas de Alfresco son las de modificar workflows, tenants, webscripts, scripts o templates.

Son tres sencillos pasos:

En primer lugar necesitamos el modelo de contenidos en cuestión. Un ejemplo puede ser el exampleModel.xml que podeis encontrar en vuestro directorio de extensiones de Alfresco (renombrado con .sample). Este archivo es necesario subirlo a la carpeta Diccionario de datos > Models y en el proceso de subida, marcar la propiedad "Activar Modelo".



Una vez hecho esto, en la carperta Web Client Extension de Diccionario de datos, alojamos los cambios en web-client-config-custom.xml y webclient.properties

En web-client-config-custom.xml escribimos lo concerniente al nuevo modelo. Por ejemplo:


<alfresco-config>
   <config evaluator="string-compare" condition="Content Wizards">
      <content-types>
         <type name="my:sop" />
      </content-types>
   </config>

   <config evaluator="node-type" condition="my:sop">
      <property-sheet>
         <show-property name="mimetype" display-label-id="content_type"
                        component-generator="MimeTypeSelectorGenerator" />
         <show-property name="size" display-label-id="size"
                        converter="org.alfresco.faces.ByteSizeConverter"
                        show-in-edit-mode="false" />
         <show-association name="my:signOff" />
         <show-property name="my:authorisedBy" />
         <show-child-association name="my:processSteps" />
      </property-sheet>
   </config>
</alfresco-config>


Y lo mismo con webclient.properties

# my:sop
my.publishedDate=Fecha de publicacion
my.authorisedBy=Autorizado por
my.signOff=Firmado
my.processSteps=Etapa

# my:imageClassification
my.width=Anchura
my.height=Altura
my.resolution=Resolucion

 



Finalmente, accedemos a la consola:

http://localhost:8080/alfresco/faces/jsp/admin/webclientconfig-console.jsp

Escribimos reload, y pinchamos en submit.

Tras esto procedemos a añadir contenido, donde se debería visualizar el tipo de contenido "Standard Operation Procedure" del modelo de ejemplo. Y todo esto sin reiniciar alfresco.



Enlaces:


P.S: También es posible desplegar un modelo de contenido a través de la consola del repositorio http://localhost:8080/alfresco/faces/jsp/admin/repoadmin-console.jsp, permitiendonos el acceso a los directorios fisicos de alfresco para desplegar modelos.

00

More Blog Entries

0 Comments