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:
- http://wiki.alfresco.com/wiki/Dynamic_Models
- http://blyx.com/2010/06/04/alfresco-hack-las-consolas-escondidas-de-alfresco/
- http://ecmarchitect.com/archives/2008/03/10/814
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.