AnsweredAssumed Answered

Crear un webscript-dashlet: Sencillísimo!!!

Question asked by ajv on May 15, 2008
Hola a todos,

Llevo unos días intentando hacer un webscript integrado en un dashlet personalizado, de forma que cada usuario pueda añadirlo o no a su MyAlfresco según le convenga…y me ha parecido SUPER sencillo!!  :D
Os pongo los pasos que he seguido por si alguien se anima a hacer alguno:
1.-Crear el webscript: Esto puede ser tan sencillo o tan complicado como queráis, depende de lo que queramos hacer con el webscript…Supongamos que el webscript tenga, por ejemplo, la siguiente URL: miwebscript/XXX
De esta forma, si se llamase desde un navegador, tendríamos que escribir lo siguiente: http://<host>:<puerto>/alfresco/service/miwebscript/XXX

2.-Crear un jsp que represente al dashlet. Este jsp se puede ubicar en cualquier sitio de los jsp's, pero recomiendo que sea en el directorio de extension de jsp, es decir, en \tomcat\webapps\alfresco\jsp\extesion\
Por tanto, crearíamos el jsp "XXX-webscript.jsp" en "\tomcat\webapps\alfresco\jsp\extesion\"
El nombre del jsp es totalmente libre…le he puesto XXX-webscript para que resulte más claro (porque está relacionado con el webscript XXX que hemos creado en el paso 1).
Este jsp es MUY MUY MUY simple. Únicamente contendrá estas 2 líneas de código:
<%@ taglib uri="/WEB-INF/repo.tld" prefix="r" %>
<r:webScript scriptUrl="/wcs/miwebscript/XXX" />
Lo de colocar /wcs/ antes de la url del webscript todavía no he descubierto por qué  :oops:…Si alguien lo sabe, que lo diga, por favor.
Con estos 2 pasos el dashlet increiblemente está creado!! Ahora nos queda hacerlo visible al usuario: eso es el paso 3  :D

3.- Configurar el cliente web, para que los usuarios tengan disponible el dashlet que hemos creado previamente.
Modificar el web-client-config-custom.xml, añadiendo lel siguiente código antes del tag </alfresco-config>
<config evaluator="string-compare" condition="Dashboards">
   <dashboards>
      <dashlets>
         <dashlet id="XXX-webscript" label="Titulito de mi dashlet" description="Descripcion de mi dashlet" jsp="/jsp/extension/XXX-webscript.jsp" />
      </dashlets>
   </dashboards>
</config>
En este paso se añade un nuevo dashlet a la lista de dashlets disponibles. Podemos especificar un título para el dashlet (que puede ser así fijo como he puesto yo…o bien, emplear label-id, para que coja un mensaje i18n especificado en las propiedades del cliente web…ídem para la descripción).
Por último, enlazamos el dahslet con el jsp que creamos en el paso 2.

Ahora sólo nos queda reiniciar el servidor de Alfresco y listo!
A que es sencillo?? Además, es un webscript por lo que es muy sencillo modificarlo, es flexible y mantenible.
Y queda totalmente integrado en la interfaz de Alfresco.

Bueno, espero que a alguien le pueda resultar útil.
Saludos!!  :D

Outcomes