<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Desplegar una acción en Alfresco in Alfresco Archive</title>
    <link>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105193#M73547</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Si, es exactamente en serc/main/resources/alfresco/module/*-repo/context/service-context.xml donde he definido el bean:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;lt;beans xmlns="&lt;A class="jive-link-external-small" href="http://www.springframework.org/schema/beans" rel="nofollow noopener noreferrer" target="_blank"&gt;http://www.springframework.org/schema/beans&lt;/A&gt;"&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; xmlns:xsi="&lt;A class="jive-link-external-small" href="http://www.w3.org/2001/XMLSchema-instance" rel="nofollow noopener noreferrer" target="_blank"&gt;http://www.w3.org/2001/XMLSchema-instance&lt;/A&gt;"&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; xsi:schemaLocation="&lt;A class="jive-link-external-small" href="http://www.springframework.org/schema/beans" rel="nofollow noopener noreferrer" target="_blank"&gt;http://www.springframework.org/schema/beans&lt;/A&gt;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;A class="jive-link-external-small" href="http://www.springframework.org/schema/beans/spring-beans-3.0.xsd" rel="nofollow noopener noreferrer" target="_blank"&gt;http://www.springframework.org/schema/beans/spring-beans-3.0.xsd&lt;/A&gt;"&amp;gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;bean id="myAlfrescoCustom" class="com.alf.ActionDemo"&amp;nbsp; parent="baseJavaScriptExtension"&amp;gt;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;property name="extensionName"&amp;nbsp;&amp;nbsp; value="mycustom" /&amp;gt;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;/bean&amp;gt;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;lt;/beans&amp;gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;La clase ActionDemo:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;public class ActionAlfrescoDemo extends BaseProcessorExtension {&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;public void writeToCatalina(String text) {&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp; System.out.println("Message from Alfresco websript: " + text);&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;}&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;El Script JS en Alfresco:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;mycustom.writeToCatalina("Ei! ");&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Eso es todo lo que tengo... el módulo AMP está instalado en alfresco.war, comprobado con java -jar bin/alfresco-mmt.jar list y cuándo se acciona la regla que ejecuta el script sale el siguiente log:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;2018-03-06 10:52:41,542 ERROR [org.springframework.extensions.webscripts.AbstractRuntime] [http-apr-8080-exec-10] Exception from executeScript: 02060021 Failed to execute script 'workspace://*/*': 02060020 ReferenceError: "mycustom" is not defined.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;[...]&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ais, si ya estoy dándole mil vueltas a esto... cuándo se consiga solventar este asunto y tenga que ponerme a implementar la tarea de generación de documentos, me caigo muerta &lt;IMG src="https://connect.hyland.com/legacyfs/online/alfresco/emoticons/confused.png" /&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 06 Mar 2018 10:11:28 GMT</pubDate>
    <dc:creator>peli</dc:creator>
    <dc:date>2018-03-06T10:11:28Z</dc:date>
    <item>
      <title>Desplegar una acción en Alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105183#M73537</link>
      <description>Buenos días,llevo unas semanas trabajando con Alfresco. Estoy intentando implementar una acción Java para llamarla desde una regla que ejecuta un script cuando se modifica un documento concreto del share. Estoy muy confusa sobre cúal es el procedimiento a seguir para poder llamar a esta acción desde</description>
      <pubDate>Mon, 19 Feb 2018 12:30:18 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105183#M73537</guid>
      <dc:creator>peli</dc:creator>
      <dc:date>2018-02-19T12:30:18Z</dc:date>
    </item>
    <item>
      <title>Re: Desplegar una acción en Alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105184#M73538</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Te recomiendo que leas la serie de tutoriales de Jeff Potts sobre desarrollo en Alfresco:&amp;nbsp;&lt;A class="link-titled" href="https://ecmarchitect.com/alfresco-developer-series" title="https://ecmarchitect.com/alfresco-developer-series" rel="nofollow noopener noreferrer"&gt;About the Alfresco Developer Tutorial Series | ECM Architect&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;En concreto, para esta tarea debes prestar atención a:&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="https://ecmarchitect.com/alfresco-developer-series-tutorials/maven-sdk/tutorial/tutorial.html" title="https://ecmarchitect.com/alfresco-developer-series-tutorials/maven-sdk/tutorial/tutorial.html" rel="nofollow noopener noreferrer"&gt;Getting Started with the Alfresco Maven SDK | ECMArchitect | Alfresco Developer Tutorials&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="https://ecmarchitect.com/alfresco-developer-series-tutorials/actions/tutorial/tutorial.html" title="https://ecmarchitect.com/alfresco-developer-series-tutorials/actions/tutorial/tutorial.html" rel="nofollow noopener noreferrer"&gt;Creating Custom Actions in Alfresco | ECMArchitect | Alfresco Developer Tutorials&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 19 Feb 2018 15:31:27 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105184#M73538</guid>
      <dc:creator>angelborroy</dc:creator>
      <dc:date>2018-02-19T15:31:27Z</dc:date>
    </item>
    <item>
      <title>Re: Desplegar una acción en Alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105185#M73539</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Una vez leída la serie de tutoriales concluyo que, para crear una acción que implemente una nueva funcionalidad en Alfresco, primero creo un proyecto Maven; desarrollo la clase en cuestión que extienda de ActionExecuterAbstractBase y registro ésta a través de un bean ubicado en el directorio src\main\resources\alfresco\module\*-repo\context\service-context.xml del proyecto creado; por último ejecutar ./run.sh para crear el AMP y desplegarlo en Alfresco a través del servidor Tomcat embebido. ¿Es éste el proceso correcto?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Y si es así, accediendo a http:\\localhost:8080/share ya se podría llamar a esta acción desde un script? Mi intención es crear una script que invoque la acción, por lo que no necesitaría mostrarla en la interfaz de usuario de share y por tanto no necesitaría crear un artefacto para hacer visible la acción en el share. ¿Es acertada esta suposición?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;La acción que quiero implementar es para trabajar con documentos binarios. Se ejecuta un script que invoca la acción pasando unos valores por parámetros, la acción accede al documento binario y lo rellena con los parámetros que recibe para devolver el documento binario rellenado.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Muchas gracias.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Feb 2018 11:44:40 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105185#M73539</guid>
      <dc:creator>peli</dc:creator>
      <dc:date>2018-02-27T11:44:40Z</dc:date>
    </item>
    <item>
      <title>Re: Desplegar una acción en Alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105186#M73540</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;El planteamiento tiene buena pinta.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Mediante&amp;nbsp;JavaScript deberías poder invocar la acción utilizando el nombre que le pongas al bean de Spring sin más desarrollos que el propio AMP del repo.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Feb 2018 12:21:40 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105186#M73540</guid>
      <dc:creator>angelborroy</dc:creator>
      <dc:date>2018-02-27T12:21:40Z</dc:date>
    </item>
    <item>
      <title>Re: Desplegar una acción en Alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105187#M73541</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;La semana pasada estuve probando a desplegar un AMP de la forma descrita anteriormente. Creé un proyecto Maven con una clase que simplemente tenía un System.out.println() para escribir en el log de Alfresco. Una vez generado el AMP, lo ubiqué en el directorio alfresco\amps e instalé el AMP con el comando java -jar alfrescp-mmt.jar install amps/*-repo.amp tomcat/webapps/alfresco.war. Sin errores hasta el momento.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Accedo a mi localhost:8080/share y creo un script js ubicado en Diccionario de datos/Script, que se ejecuta con una regla y el cual invoca al método de la clase utilizando &amp;lt;valuedelbean&amp;gt;.&amp;lt;nombredelmétodo&amp;gt;;. Al ejecutarse la regla salta un error diciendo que &amp;lt;valuedelbean&amp;gt; no está definido.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;He estado buscando y parece que la definición del bean debe ir en el directorio del proyecto &lt;SPAN class=""&gt;src/main/amp/config/alfresco/module/repo-amp/context/service-context.xml y yo lo tengo en&amp;nbsp;src\main\resources\alfresco\module\*-repo\context\service-context.xml, ya que en la distribución de mi proyecto no existe ese directorio.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;Puede estar ahí la causa de que no reconozca el bean?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;Gracias &lt;IMG src="https://connect.hyland.com/legacyfs/online/alfresco/emoticons/confused.png" /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 05 Mar 2018 12:25:08 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105187#M73541</guid>
      <dc:creator>peli</dc:creator>
      <dc:date>2018-03-05T12:25:08Z</dc:date>
    </item>
    <item>
      <title>Re: Desplegar una acción en Alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105188#M73542</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Dos cosas: ¿Qué versión de SDK usas para tu proyecto? Lo puedes ver en el pom.xml del amp que estés compilando. &lt;/P&gt;&lt;P&gt;Yo con una 2.1.1 lo tengo aquí:&lt;/P&gt;&lt;P&gt;&lt;IMG class="image-1 jive-image" src="https://connect.hyland.com/legacyfs/online/alfresco/19519_pastedImage_1.png" style="width: auto; height: auto;" /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;¿Puedes pasarnos una captura de la estructura de tu proyecto?&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Coméntanos y te intentamos echar una mano.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cris.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 05 Mar 2018 14:48:22 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105188#M73542</guid>
      <dc:creator>cristinamr</dc:creator>
      <dc:date>2018-03-05T14:48:22Z</dc:date>
    </item>
    <item>
      <title>Re: Desplegar una acción en Alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105189#M73543</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Para invocar una acción desde JavaScript tienes que hacer algo así:&amp;nbsp;&lt;A class="link-titled" href="https://docs.alfresco.com/community/references/API-JS-ScriptAction-execute.html" title="https://docs.alfresco.com/community/references/API-JS-ScriptAction-execute.html" rel="nofollow noopener noreferrer"&gt;execute | Alfresco Documentation&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;En ese ejemplo el nombre del bean de Spring es "mail".&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 05 Mar 2018 18:00:57 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105189#M73543</guid>
      <dc:creator>angelborroy</dc:creator>
      <dc:date>2018-03-05T18:00:57Z</dc:date>
    </item>
    <item>
      <title>Re: Desplegar una acción en Alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105190#M73544</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Pues estoy usando la versión del SDK 3.0.1&lt;IMG __jive_id="19533" alt="" class="image-1 jive-image j-img-original" src="https://connect.hyland.com/legacyfs/online/alfresco/19533_Mavensdk-v.PNG" style="height: auto;" /&gt;, y la estructura del proyecto es esta:&lt;/P&gt;&lt;P&gt;&lt;IMG __jive_id="19534" alt="" class="image-2 jive-image j-img-original" src="https://connect.hyland.com/legacyfs/online/alfresco/19534_estructuraproyecto.PNG" style="height: auto;" /&gt;&lt;/P&gt;&lt;P&gt;Puede que influya que para generar el proyecto haya elegido el artefacto 4. alfresco-platform-jar-archetype? Ya que sólamente incluye como opciones las versiones 3.0.0 y 3.0.1...&lt;/P&gt;&lt;P&gt;De todas formas, según el tutorial&amp;nbsp; &lt;A class="link-titled" href="https://ecmarchitect.com/alfresco-developer-series-tutorials/maven-sdk/tutorial/tutorial.html#alfresco-maven-sdk" title="https://ecmarchitect.com/alfresco-developer-series-tutorials/maven-sdk/tutorial/tutorial.html#alfresco-maven-sdk" rel="nofollow noopener noreferrer"&gt;Getting Started with the Alfresco Maven SDK | ECMArchitect | Alfresco Developer Tutorials&lt;/A&gt;, comenta que el directorio src/main/resources/alfresco/module/*-repo es dónde deben ir las declaraciones de los beans y todo lo referente a los AMP...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Muchas gracias!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Mar 2018 08:18:04 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105190#M73544</guid>
      <dc:creator>peli</dc:creator>
      <dc:date>2018-03-06T08:18:04Z</dc:date>
    </item>
    <item>
      <title>Re: Desplegar una acción en Alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105191#M73545</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Pero para usar execute debería implementar una clase JAVA que extendiera de ActionExecuterAbstractBase y heredara sus métodos, y la clase que he desarrollado extiende de BaseProcessorExtension y sólo presenta un método que contiene un System.out. .&lt;/P&gt;&lt;P&gt;Voy a probar de la manera que tú dices.&lt;/P&gt;&lt;P&gt;Gracias&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Mar 2018 08:36:24 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105191#M73545</guid>
      <dc:creator>peli</dc:creator>
      <dc:date>2018-03-06T08:36:24Z</dc:date>
    </item>
    <item>
      <title>Re: Desplegar una acción en Alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105192#M73546</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Mira, en un proyecto que tengo 3.0.0 tengo la siguiente distribución:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;IMG class="image-3 jive-image" src="https://connect.hyland.com/legacyfs/online/alfresco/19538_pastedImage_3.png" style="width: auto; height: auto;" /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Y dentro del proyecto de Alfresco:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;IMG class="image-2 jive-image" src="https://connect.hyland.com/legacyfs/online/alfresco/19537_pastedImage_2.png" style="width: auto; height: auto;" /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Echa un vistazo a tu estructura y mira a ver si lo tienes en la ruta src/main/resources/alfresco/module/nombre_proyecto/context&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cuéntanos.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cris.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Mar 2018 09:49:24 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105192#M73546</guid>
      <dc:creator>cristinamr</dc:creator>
      <dc:date>2018-03-06T09:49:24Z</dc:date>
    </item>
    <item>
      <title>Re: Desplegar una acción en Alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105193#M73547</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Si, es exactamente en serc/main/resources/alfresco/module/*-repo/context/service-context.xml donde he definido el bean:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;lt;beans xmlns="&lt;A class="jive-link-external-small" href="http://www.springframework.org/schema/beans" rel="nofollow noopener noreferrer" target="_blank"&gt;http://www.springframework.org/schema/beans&lt;/A&gt;"&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; xmlns:xsi="&lt;A class="jive-link-external-small" href="http://www.w3.org/2001/XMLSchema-instance" rel="nofollow noopener noreferrer" target="_blank"&gt;http://www.w3.org/2001/XMLSchema-instance&lt;/A&gt;"&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; xsi:schemaLocation="&lt;A class="jive-link-external-small" href="http://www.springframework.org/schema/beans" rel="nofollow noopener noreferrer" target="_blank"&gt;http://www.springframework.org/schema/beans&lt;/A&gt;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;A class="jive-link-external-small" href="http://www.springframework.org/schema/beans/spring-beans-3.0.xsd" rel="nofollow noopener noreferrer" target="_blank"&gt;http://www.springframework.org/schema/beans/spring-beans-3.0.xsd&lt;/A&gt;"&amp;gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;bean id="myAlfrescoCustom" class="com.alf.ActionDemo"&amp;nbsp; parent="baseJavaScriptExtension"&amp;gt;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;property name="extensionName"&amp;nbsp;&amp;nbsp; value="mycustom" /&amp;gt;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;/bean&amp;gt;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;lt;/beans&amp;gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;La clase ActionDemo:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;public class ActionAlfrescoDemo extends BaseProcessorExtension {&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;public void writeToCatalina(String text) {&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp; System.out.println("Message from Alfresco websript: " + text);&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;}&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;El Script JS en Alfresco:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;mycustom.writeToCatalina("Ei! ");&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Eso es todo lo que tengo... el módulo AMP está instalado en alfresco.war, comprobado con java -jar bin/alfresco-mmt.jar list y cuándo se acciona la regla que ejecuta el script sale el siguiente log:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;2018-03-06 10:52:41,542 ERROR [org.springframework.extensions.webscripts.AbstractRuntime] [http-apr-8080-exec-10] Exception from executeScript: 02060021 Failed to execute script 'workspace://*/*': 02060020 ReferenceError: "mycustom" is not defined.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;[...]&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ais, si ya estoy dándole mil vueltas a esto... cuándo se consiga solventar este asunto y tenga que ponerme a implementar la tarea de generación de documentos, me caigo muerta &lt;IMG src="https://connect.hyland.com/legacyfs/online/alfresco/emoticons/confused.png" /&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Mar 2018 10:11:28 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105193#M73547</guid>
      <dc:creator>peli</dc:creator>
      <dc:date>2018-03-06T10:11:28Z</dc:date>
    </item>
    <item>
      <title>Re: Desplegar una acción en Alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105194#M73548</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Creo que te faltan los getters y setter del objeto.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Vamos a hacer una cosa, te voy a pasar un ejemplo que funciona y revisas el código ¿vale?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;EJEMPLO (sacado del libro &lt;A href="https://www.amazon.es/Alfresco-Developer-Guide-Jeff-Potts/dp/1847193110" rel="nofollow noopener noreferrer"&gt;Alfresco developers&lt;/A&gt;, es para versiones antiguas pero para este tipo de conceptos/ejemplos va bien):&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;clase java (en la ruta src/java/com/someco/jscript/&lt;A href="https://github.com/jpotts/alfresco-developer-guide/blob/master/client-extensions/src/java/com/someco/jscript/Ratings.java" rel="nofollow noopener noreferrer"&gt;Ratings.java&lt;/A&gt;&lt;span class="lia-unicode-emoji" title=":disappointed_face:"&gt;😞&lt;/span&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;package&lt;/SPAN&gt; &lt;SPAN class=""&gt;com.someco.jscript&lt;/SPAN&gt;;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;import&lt;/SPAN&gt; &lt;SPAN class=""&gt;org.alfresco.repo.jscript.ScriptNode&lt;/SPAN&gt;;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;import&lt;/SPAN&gt; &lt;SPAN class=""&gt;org.alfresco.repo.jscript.ValueConverter&lt;/SPAN&gt;;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;import&lt;/SPAN&gt; &lt;SPAN class=""&gt;org.alfresco.repo.processor.BaseProcessorExtension&lt;/SPAN&gt;;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;import&lt;/SPAN&gt; &lt;SPAN class=""&gt;org.alfresco.service.cmr.repository.NodeRef&lt;/SPAN&gt;;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;import&lt;/SPAN&gt; &lt;SPAN class=""&gt;com.someco.service.RatingService&lt;/SPAN&gt;;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;public&lt;/SPAN&gt; &lt;SPAN class=""&gt;class&lt;/SPAN&gt; &lt;SPAN class=""&gt;Ratings&lt;/SPAN&gt; &lt;SPAN class=""&gt;extends&lt;/SPAN&gt; &lt;SPAN class=""&gt;BaseProcessorExtension&lt;/SPAN&gt; {&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;private&lt;/SPAN&gt; &lt;SPAN class=""&gt;RatingService&lt;/SPAN&gt; ratingService;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;private&lt;/SPAN&gt; &lt;SPAN class=""&gt;final&lt;/SPAN&gt; &lt;SPAN class=""&gt;ValueConverter&lt;/SPAN&gt; valueConverter &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;new&lt;/SPAN&gt; &lt;SPAN class=""&gt;ValueConverter&lt;/SPAN&gt;();&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;public&lt;/SPAN&gt; &lt;SPAN class=""&gt;void&lt;/SPAN&gt; &lt;SPAN class=""&gt;rate&lt;/SPAN&gt;(&lt;SPAN class=""&gt;ScriptNode&lt;/SPAN&gt; &lt;SPAN class=""&gt;scriptNode&lt;/SPAN&gt;, &lt;SPAN class=""&gt;int&lt;/SPAN&gt; &lt;SPAN class=""&gt;rating&lt;/SPAN&gt;, &lt;SPAN class=""&gt;String&lt;/SPAN&gt; &lt;SPAN class=""&gt;user&lt;/SPAN&gt;) {&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;ratingService&lt;SPAN class=""&gt;.&lt;/SPAN&gt;rate((&lt;SPAN class=""&gt;NodeRef&lt;/SPAN&gt;)valueConverter&lt;SPAN class=""&gt;.&lt;/SPAN&gt;convertValueForRepo(scriptNode), rating, user);&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;}&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;public&lt;/SPAN&gt; &lt;SPAN class=""&gt;void&lt;/SPAN&gt; &lt;SPAN class=""&gt;deleteRatings&lt;/SPAN&gt;(&lt;SPAN class=""&gt;ScriptNode&lt;/SPAN&gt; &lt;SPAN class=""&gt;scriptNode&lt;/SPAN&gt;) {&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;ratingService&lt;SPAN class=""&gt;.&lt;/SPAN&gt;deleteRatings((&lt;SPAN class=""&gt;NodeRef&lt;/SPAN&gt;)valueConverter&lt;SPAN class=""&gt;.&lt;/SPAN&gt;convertValueForRepo(scriptNode));&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;}&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;public&lt;/SPAN&gt; &lt;SPAN class=""&gt;Object&lt;/SPAN&gt; &lt;SPAN class=""&gt;getRatingData&lt;/SPAN&gt;(&lt;SPAN class=""&gt;ScriptNode&lt;/SPAN&gt; &lt;SPAN class=""&gt;scriptNode&lt;/SPAN&gt;) {&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;return&lt;/SPAN&gt; ratingService&lt;SPAN class=""&gt;.&lt;/SPAN&gt;getRatingData((&lt;SPAN class=""&gt;NodeRef&lt;/SPAN&gt;)valueConverter&lt;SPAN class=""&gt;.&lt;/SPAN&gt;convertValueForRepo(scriptNode));&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;}&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;public&lt;/SPAN&gt; &lt;SPAN class=""&gt;int&lt;/SPAN&gt; &lt;SPAN class=""&gt;getUserRating&lt;/SPAN&gt;(&lt;SPAN class=""&gt;ScriptNode&lt;/SPAN&gt; &lt;SPAN class=""&gt;scriptNode&lt;/SPAN&gt;, &lt;SPAN class=""&gt;String&lt;/SPAN&gt; &lt;SPAN class=""&gt;user&lt;/SPAN&gt;) {&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;return&lt;/SPAN&gt; ratingService&lt;SPAN class=""&gt;.&lt;/SPAN&gt;getUserRating((&lt;SPAN class=""&gt;NodeRef&lt;/SPAN&gt;)valueConverter&lt;SPAN class=""&gt;.&lt;/SPAN&gt;convertValueForRepo(scriptNode), user);&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;}&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;public&lt;/SPAN&gt; &lt;SPAN class=""&gt;boolean&lt;/SPAN&gt; &lt;SPAN class=""&gt;hasRatings&lt;/SPAN&gt;(&lt;SPAN class=""&gt;ScriptNode&lt;/SPAN&gt; &lt;SPAN class=""&gt;scriptNode&lt;/SPAN&gt;) {&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;return&lt;/SPAN&gt; ratingService&lt;SPAN class=""&gt;.&lt;/SPAN&gt;hasRatings((&lt;SPAN class=""&gt;NodeRef&lt;/SPAN&gt;)valueConverter&lt;SPAN class=""&gt;.&lt;/SPAN&gt;convertValueForRepo(scriptNode));&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;}&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;public&lt;/SPAN&gt; &lt;SPAN class=""&gt;void&lt;/SPAN&gt; &lt;SPAN class=""&gt;setRatingService&lt;/SPAN&gt;(&lt;SPAN class=""&gt;RatingService&lt;/SPAN&gt; &lt;SPAN class=""&gt;ratingService&lt;/SPAN&gt;) {&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;this&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;ratingService &lt;SPAN class=""&gt;=&lt;/SPAN&gt; ratingService;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;}&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;}&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Otro java más con el servicio customizado (ruta src/java/com/someco/service/&lt;A href="https://github.com/jpotts/alfresco-developer-guide/blob/master/client-extensions/src/java/com/someco/service/RatingService.java" rel="nofollow noopener noreferrer"&gt;RatingService.java&lt;/A&gt;)&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;package&lt;/SPAN&gt; &lt;SPAN class=""&gt;com.someco.service&lt;/SPAN&gt;;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;import&lt;/SPAN&gt; &lt;SPAN class=""&gt;org.alfresco.service.cmr.repository.NodeRef&lt;/SPAN&gt;;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;public&lt;/SPAN&gt; &lt;SPAN class=""&gt;interface&lt;/SPAN&gt; &lt;SPAN class=""&gt;RatingService&lt;/SPAN&gt; {&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;public&lt;/SPAN&gt; &lt;SPAN class=""&gt;void&lt;/SPAN&gt; &lt;SPAN class=""&gt;rate&lt;/SPAN&gt;(&lt;SPAN class=""&gt;NodeRef&lt;/SPAN&gt; &lt;SPAN class=""&gt;nodeRef&lt;/SPAN&gt;, &lt;SPAN class=""&gt;int&lt;/SPAN&gt; &lt;SPAN class=""&gt;rating&lt;/SPAN&gt;, &lt;SPAN class=""&gt;String&lt;/SPAN&gt; &lt;SPAN class=""&gt;user&lt;/SPAN&gt;);&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;public&lt;/SPAN&gt; &lt;SPAN class=""&gt;void&lt;/SPAN&gt; &lt;SPAN class=""&gt;deleteRatings&lt;/SPAN&gt;(&lt;SPAN class=""&gt;NodeRef&lt;/SPAN&gt; &lt;SPAN class=""&gt;nodeRef&lt;/SPAN&gt;);&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;public&lt;/SPAN&gt; &lt;SPAN class=""&gt;RatingData&lt;/SPAN&gt; &lt;SPAN class=""&gt;getRatingData&lt;/SPAN&gt;(&lt;SPAN class=""&gt;NodeRef&lt;/SPAN&gt; &lt;SPAN class=""&gt;nodeRef&lt;/SPAN&gt;);&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;public&lt;/SPAN&gt; &lt;SPAN class=""&gt;int&lt;/SPAN&gt; &lt;SPAN class=""&gt;getUserRating&lt;/SPAN&gt;(&lt;SPAN class=""&gt;NodeRef&lt;/SPAN&gt; &lt;SPAN class=""&gt;nodeRef&lt;/SPAN&gt;, &lt;SPAN class=""&gt;String&lt;/SPAN&gt; &lt;SPAN class=""&gt;user&lt;/SPAN&gt;);&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;public&lt;/SPAN&gt; &lt;SPAN class=""&gt;boolean&lt;/SPAN&gt; &lt;SPAN class=""&gt;hasRatings&lt;/SPAN&gt;(&lt;SPAN class=""&gt;NodeRef&lt;/SPAN&gt; &lt;SPAN class=""&gt;nodeRef&lt;/SPAN&gt;);&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;public&lt;/SPAN&gt; &lt;SPAN class=""&gt;interface&lt;/SPAN&gt; &lt;SPAN class=""&gt;RatingData&lt;/SPAN&gt; {&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;public&lt;/SPAN&gt; &lt;SPAN class=""&gt;int&lt;/SPAN&gt; &lt;SPAN class=""&gt;getCount&lt;/SPAN&gt;();&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;public&lt;/SPAN&gt; &lt;SPAN class=""&gt;double&lt;/SPAN&gt; &lt;SPAN class=""&gt;getRating&lt;/SPAN&gt;();&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;public&lt;/SPAN&gt; &lt;SPAN class=""&gt;int&lt;/SPAN&gt; &lt;SPAN class=""&gt;getTotal&lt;/SPAN&gt;();&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;}&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;}&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;contexto con el bean (en la ruta config/alfresco/extension/&lt;A href="https://github.com/jpotts/alfresco-developer-guide/blob/master/client-extensions/config/alfresco/extension/someco-services-context.xml" rel="nofollow noopener noreferrer"&gt;someco-services-context.xml&lt;/A&gt;)&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&amp;lt;?&lt;SPAN class=""&gt;xml&lt;/SPAN&gt;&lt;SPAN class=""&gt; version&lt;/SPAN&gt;=&lt;SPAN class=""&gt;'1.0'&lt;/SPAN&gt;&lt;SPAN class=""&gt; encoding&lt;/SPAN&gt;=&lt;SPAN class=""&gt;'UTF-8'&lt;/SPAN&gt;?&amp;gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&amp;lt;!&lt;SPAN class=""&gt;DOCTYPE&lt;/SPAN&gt; &lt;SPAN class=""&gt;beans&lt;/SPAN&gt;&lt;SPAN&gt; PUBLIC '-//SPRING//DTD BEAN//EN' '&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://www.springframework.org/dtd/spring-beans.dtd" rel="nofollow noopener noreferrer" target="_blank"&gt;http://www.springframework.org/dtd/spring-beans.dtd&lt;/A&gt;&lt;SPAN&gt;'&amp;gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&amp;lt;&lt;SPAN class=""&gt;beans&lt;/SPAN&gt;&amp;gt;&lt;BR /&gt;....&lt;BR /&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&amp;lt;&lt;SPAN class=""&gt;bean&lt;/SPAN&gt; &lt;SPAN class=""&gt;id&lt;/SPAN&gt;=&lt;SPAN class=""&gt;"ratingScript"&lt;/SPAN&gt; &lt;SPAN class=""&gt;parent&lt;/SPAN&gt;=&lt;SPAN class=""&gt;"baseJavaScriptExtension"&lt;/SPAN&gt; &lt;SPAN class=""&gt;class&lt;/SPAN&gt;=&lt;SPAN class=""&gt;"com.someco.jscript.Ratings"&lt;/SPAN&gt;&amp;gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&amp;lt;&lt;SPAN class=""&gt;property&lt;/SPAN&gt; &lt;SPAN class=""&gt;name&lt;/SPAN&gt;=&lt;SPAN class=""&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;extensionName&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&amp;lt;&lt;SPAN class=""&gt;value&lt;/SPAN&gt;&amp;gt;ratings&amp;lt;/&lt;SPAN class=""&gt;value&lt;/SPAN&gt;&amp;gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&amp;lt;/&lt;SPAN class=""&gt;property&lt;/SPAN&gt;&amp;gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&amp;lt;&lt;SPAN class=""&gt;property&lt;/SPAN&gt; &lt;SPAN class=""&gt;name&lt;/SPAN&gt;=&lt;SPAN class=""&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;ratingService&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&amp;lt;&lt;SPAN class=""&gt;ref&lt;/SPAN&gt; &lt;SPAN class=""&gt;bean&lt;/SPAN&gt;=&lt;SPAN class=""&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;RatingService&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; /&amp;gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&amp;lt;/&lt;SPAN class=""&gt;property&lt;/SPAN&gt;&amp;gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&amp;lt;/&lt;SPAN class=""&gt;bean&lt;/SPAN&gt;&amp;gt;&lt;BR /&gt;&amp;lt;/beans&amp;gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;Y&amp;nbsp; javascript (en la ruta src/scripts/&lt;A href="https://github.com/jpotts/alfresco-developer-guide/blob/master/client-extensions/src/scripts/addTestRating.js" rel="nofollow noopener noreferrer"&gt;addTestRating.js&lt;/A&gt;&lt;span class="lia-unicode-emoji" title=":disappointed_face:"&gt;😞&lt;/span&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;// randomly pick a num b/w 1 and 5 inclusive&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;var&lt;/SPAN&gt; ratingValue &lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;Math&lt;/SPAN&gt;.&lt;SPAN class=""&gt;floor&lt;/SPAN&gt;(&lt;SPAN class=""&gt;Math&lt;/SPAN&gt;.&lt;SPAN class=""&gt;random&lt;/SPAN&gt;()&lt;SPAN class=""&gt;*&lt;/SPAN&gt;&lt;SPAN class=""&gt;5&lt;/SPAN&gt;) &lt;SPAN class=""&gt;+&lt;/SPAN&gt; &lt;SPAN class=""&gt;1&lt;/SPAN&gt;;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;&lt;SPAN class=""&gt;//&lt;/SPAN&gt; use the rating service instead&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;&lt;SPAN class=""&gt;/*&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;// add the aspect to this document if it needs it&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;if (document.hasAspect("sc:rateable")) {&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt; logger.log("Document already as aspect");&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;} else {&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt; logger.log("Adding rateable aspect");&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt; document.addAspect("sc:rateable");&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;}&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;var props = new Array(2);&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;props["sc:rating"] = ratingValue;&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;props["sc:rater"] = person.properties.userName;&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;// create a new ratings node and set its properties&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;var ratingsNode = document.createNode("rating" + new Date().getTime(), "sc:rating", props, "sc:ratings");&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;ratingsNode.save();&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;&lt;SPAN class=""&gt;*/&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE data-tab-size="8"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;&lt;SPAN class=""&gt;ratings&lt;/SPAN&gt;.&lt;SPAN class=""&gt;rate&lt;/SPAN&gt;(&lt;SPAN class=""&gt;document&lt;/SPAN&gt;, ratingValue, &lt;SPAN class=""&gt;person&lt;/SPAN&gt;.&lt;SPAN class=""&gt;properties&lt;/SPAN&gt;.&lt;SPAN class=""&gt;userName&lt;/SPAN&gt;);&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;SPAN class=""&gt;logger&lt;/SPAN&gt;.&lt;SPAN class=""&gt;log&lt;/SPAN&gt;(&lt;SPAN class=""&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;Ratings node saved.&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;);&lt;/BLOCKQUOTE&gt;&lt;P&gt;Prueba y nos dices. Si consigues sacar este ejemplo, el tuyo lo verás con más claridad y podrás corregirlo. El caso es no quedarte estancada y ver si un ejemplo probado te sale para ir aprendiendo con la práctica.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Coméntanos,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cris.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Mar 2018 10:33:26 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105194#M73548</guid>
      <dc:creator>cristinamr</dc:creator>
      <dc:date>2018-03-06T10:33:26Z</dc:date>
    </item>
    <item>
      <title>Re: Desplegar una acción en Alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105195#M73549</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Llevo intentando hacer funcionar el ejemplo pero nada... He copiado las clases y el bean en mi proyecto pero cuando se ejecuta la regla del script en el share sigue apareciendo el error 'ratings is not defined'. He estado buscando info y sospecho de si el problema vendrá de la intalación del módulo AMP en Alfresco. Para añadir una extensión de Alfresco se instala el amp de la forma &lt;EM&gt;"java -jar bin\alfresco-mmt.jar amps\*.amp tomcat\webapps\alfresco.war"&lt;/EM&gt; y ya está?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Porque al desisntalar el módulo, aparece un log que muestra:&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;- Removing file '/WEB-INF/lib/*.jar' from war&lt;/P&gt;&lt;P&gt;- Removing file '/WEB-INF/classes/alfresco/module/&amp;lt;nombre-modulo&amp;gt;/modifications.install' from war&lt;/P&gt;&lt;P&gt;- Removing file '/WEB-INF//classes/alfresco/module/&amp;lt;nombre-modulo&amp;gt;/module.properties' from war&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;Y si accededes a esos a ambos directorios una vez instalado el módulo, no existen ningún jar ni ningún directorio con el nombre del módulo que acabas de instalar. ¿Es porque están encapsulados en alfresco.war?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Vi que otra forma de añadir un módulo a Alfresco sería copiar el JAR en tomcat/webapps/WEB-INF/lib, pero de de esta manera Alfresco me da error al intentar acceder con un &lt;EM&gt;'No se han reconocido sus datos de acceso o Alfresco Content Service no está disponible en este momento&lt;/EM&gt;'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Muchas gracias por la ayuda.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 Mar 2018 12:09:50 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105195#M73549</guid>
      <dc:creator>peli</dc:creator>
      <dc:date>2018-03-07T12:09:50Z</dc:date>
    </item>
    <item>
      <title>Re: Desplegar una acción en Alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105196#M73550</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;...Alfresco se instala el amp de la forma &lt;EM&gt;"java -jar bin\alfresco-mmt.jar amps\*.amp tomcat\webapps\alfresco.war"&lt;/EM&gt; y ya está?&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;No lo estás instalando correctamente, sería java-jar bin\alfresco-mmt.jar install amps\tu-amp.amp ruta_a_webapps\alfresco.war&lt;/P&gt;&lt;P&gt;Y lo mismo para share: java-jar bin\alfresco-mmt.jar install amps_share\tu-amp.amp ruta_a_webapps\share.war&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Con el jar alfresco-mmt.jar puedes ver incluso que amps tienes instalados. Aquí más referencia: &lt;A class="link-titled" href="https://docs.alfresco.com/5.2/concepts/dev-extensions-modules-management-tool.html" title="https://docs.alfresco.com/5.2/concepts/dev-extensions-modules-management-tool.html" rel="nofollow noopener noreferrer"&gt;Using the Module Management Tool (MMT) | Alfresco Documentation&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;¿Puedes mirar si lo tienes correctamente instalado?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 Mar 2018 14:47:46 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105196#M73550</guid>
      <dc:creator>cristinamr</dc:creator>
      <dc:date>2018-03-07T14:47:46Z</dc:date>
    </item>
    <item>
      <title>Re: Desplegar una acción en Alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105197#M73551</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Nada Cristina, no consigo salir de este bache. Os expongo en procedimiento que sigo:&lt;/P&gt;&lt;P&gt;1. Creación de la clase en src\main\java.&lt;/P&gt;&lt;P&gt;2. Registro del bean en src\main\resources\alfresco\module\&amp;lt;nombre-repo&amp;gt;\context\service-context.xml&lt;/P&gt;&lt;P&gt;3. Generación del AMP con &lt;EM&gt;mvn package&lt;/EM&gt;.&lt;/P&gt;&lt;P&gt;4. Ubicación del AMP en el directorio de Alfresco alfresco\amps.&lt;/P&gt;&lt;P&gt;5. Instalación mediante&lt;EM&gt; java -jar bin\alfresco-mmt.jar install amps\&amp;lt;nombre-AMP&amp;gt;.amp tomcat\webapps\alfresco.war&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;6. Instalación mediante &lt;EM&gt;java -jar bin\alfresco-mmt.jar install amps\&amp;lt;nombre-AMP&amp;gt;.amp tomcat\webapps\share.war&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;7.&lt;/EM&gt; Comprobación de la instalación mediante &lt;EM&gt;java -jar bin\alfresco list alfresco\webapps\alfresco.war y&amp;nbsp;java -jar bin\alfresco list alfresco\webapps\share.war. &lt;/EM&gt;Comprobación afirmativa tanto para alfresco.war como para share.war.&lt;IMG alt="" class="image-1 jive-image j-img-original" src="https://connect.hyland.com/legacyfs/online/alfresco/19554_installed.PNG" style="width: 620px; height: 97px;" /&gt;&lt;EM&gt; &lt;/EM&gt;&lt;/P&gt;&lt;P&gt;8. Creación de una regla en una carpeta de un espacio de Alfresco que ejecuta el script ubicado en Diccionario de datos\Scripts.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Adjunto el código del proyecto Maven, que no tiene nada, junto con el script, que es una línea. Ya no tengo ideas de lo que puedo estar haciendo mal...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Mar 2018 18:39:06 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105197#M73551</guid>
      <dc:creator>peli</dc:creator>
      <dc:date>2018-03-08T18:39:06Z</dc:date>
    </item>
    <item>
      <title>Re: Desplegar una acción en Alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105198#M73552</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hola chicos,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;he probado con el ejemplo de enviar email&amp;nbsp; &lt;A class="link-titled" href="https://docs.alfresco.com/5.2/references/dev-extension-points-actions.html" title="https://docs.alfresco.com/5.2/references/dev-extension-points-actions.html" rel="nofollow noopener noreferrer"&gt;Actions | Alfresco Documentation&lt;/A&gt;&amp;nbsp; pero consigo el mismo resultado que de la manera anterior " 'send-as-email' is not defined". También he probado a instalar el AMP utilizando apply_amps pero el resultado es el mismo otra vez, o peor, utilizando ese ejecutable después no puedo hacer login en Alfresco Share y tengo que volver a una copia anterior de alfresco.war .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Creo que el problema radica en el proceso de instalación del amp que estou siguiendo, comentado anteriormente. Y no sé como salir de este bache después de 2 semanas bloqueada.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Muchas gracias por todo.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Mar 2018 11:38:49 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105198#M73552</guid>
      <dc:creator>peli</dc:creator>
      <dc:date>2018-03-13T11:38:49Z</dc:date>
    </item>
    <item>
      <title>Re: Desplegar una acción en Alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105199#M73553</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Si sigues este tutorial deberías ser capaz de desarrollar una &lt;STRONG&gt;Action&lt;/STRONG&gt; en Alfresco:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://ecmarchitect.com/alfresco-developer-series-tutorials/actions/tutorial/tutorial.html" rel="nofollow noopener noreferrer"&gt;https://ecmarchitect.com/alfresco-developer-series-tutorials/actions/tutorial/tutorial.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;También puede ayudarte a empezar la configuración del entorno de desarrollo:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://ecmarchitect.com/alfresco-developer-series-tutorials/maven-sdk/tutorial/tutorial.html" rel="nofollow noopener noreferrer"&gt;https://ecmarchitect.com/alfresco-developer-series-tutorials/maven-sdk/tutorial/tutorial.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;En el fondo el proceso no es tan complejo:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;a) Define una clase Java que extienda de ActionExecuterAbstractBase (&lt;A href="https://github.com/jpotts/alfresco-developer-series/blob/master/actions/actions-tutorial-repo/src/main/java/com/someco/action/executer/SetWebFlag.java" rel="nofollow noopener noreferrer"&gt;https://github.com/jpotts/alfresco-developer-series/blob/master/actions/actions-tutorial-repo/src/main/java/com/someco/action/executer/SetWebFlag.java&lt;/A&gt;)&lt;/P&gt;&lt;P&gt;b) Declara el bean de Spring con el nombre que desees usar (&lt;A href="https://github.com/jpotts/alfresco-developer-series/blob/master/actions/actions-tutorial-repo/src/main/resources/alfresco/module/actions-tutorial-repo/context/service-context.xml#L30" rel="nofollow noopener noreferrer"&gt;https://github.com/jpotts/alfresco-developer-series/blob/master/actions/actions-tutorial-repo/src/main/resources/alfresco/module/actions-tutorial-repo/context/service-context.xml#L30&lt;/A&gt;)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Y ya debería aparecerte en la lista de la opción "Realizar acción" en la definición de reglas desde Share.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Mar 2018 11:53:36 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105199#M73553</guid>
      <dc:creator>angelborroy</dc:creator>
      <dc:date>2018-03-13T11:53:36Z</dc:date>
    </item>
    <item>
      <title>Re: Desplegar una acción en Alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105200#M73554</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Resuelto el problema instalando el amp en &lt;EM&gt;java -jar bin\alfresco-mmt.jar install amps\&amp;lt;nombre-AMP&amp;gt;.amp tomcat\webapps\alfresco .&lt;/EM&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Muchas gracias!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 22 Mar 2018 10:56:00 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/desplegar-una-acci%C3%B3n-en-alfresco/m-p/105200#M73554</guid>
      <dc:creator>peli</dc:creator>
      <dc:date>2018-03-22T10:56:00Z</dc:date>
    </item>
  </channel>
</rss>

