<?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: Como puedo crear carpetas y archivos en alfresco  a través de javascript ? in Alfresco Archive</title>
    <link>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84088#M56573</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;He seguido desarrollando el ejemplo aquí:&lt;/P&gt;&lt;P&gt;&lt;A href="https://github.com/angelborroy/alfresco-add-menu-sample" rel="nofollow noopener noreferrer"&gt;https://github.com/angelborroy/alfresco-add-menu-sample&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Espero que te sirva de ayuda. Esta es una de las partes menos documentadas de Alfresco...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;H1 style="color: #24292e; background-color: #ffffff; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #eaecef; font-weight: 600; font-size: 2em; margin: 24px 0px 16px; padding-bottom: 0.3em;" id="toc-hId-478071794"&gt;Alfresco: Cómo desarrollar la lógica de repositorio asociada al botón&lt;/H1&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;&lt;EM&gt;Share&lt;/EM&gt; es una aplicación web de cliente que no contiene lógica de negocio. Por tanto, si el botón necesita realizar operaciones en el repositorio de Alfresco será necesario desarrollar esa lógica en un proyecto de Repo que sea invocado desde &lt;EM&gt;Share&lt;/EM&gt; a través de una invocación REST.&lt;/P&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;En esta segunda parte se describen componentes del proyecto de Repo &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;add-menu-dl-repo&lt;/CODE&gt; y una modificación en el proyecto &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;add-menu-dl-share&lt;/CODE&gt; para invocar a la lógica de repositorio.&lt;/P&gt;&lt;H2 style="color: #24292e; background-color: #ffffff; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #eaecef; font-weight: 600; font-size: 1.5em; margin-top: 24px; margin-bottom: 16px; padding-bottom: 0.3em;" id="toc-hId--441878988"&gt;Desarrollar un Web Script de repositorio&lt;/H2&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;Alfresco dispone de una API de desarrollo de servicios REST denominada &lt;SPAN style="font-weight: 600;"&gt;&lt;STRONG&gt;Web Script&lt;/STRONG&gt;&lt;/SPAN&gt;. En este caso vamos a desarrollar un servicio REST que crea un fichero en la carpeta indicada. Por convención, las operaciones de creación en las APIs REST se realizan mediante HTTP POST y por comodidad vamos a realizar el intercambio de información en formato JSON.&lt;/P&gt;&lt;BLOCKQUOTE class="jive-quote" style="color: #6a737d; background-color: #ffffff; border-left-width: 0.25em; border-left-style: solid; border-left-color: #dfe2e5; margin: 0px 0px 16px; padding: 0px 1em;"&gt;&lt;P&gt;Pueden desarrollarse otro tipo de Web Scripts mediante HTTP GET, PUT o DELETE o enviar los parámetros de la URL.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;La lógica del Web Script será desarrollada utilizando la &lt;SPAN style="font-weight: 600;"&gt;&lt;STRONG&gt;API JavaScript&lt;/STRONG&gt;&lt;/SPAN&gt; de servidor de Alfresco basada en Rhino, aunque podría desarrollarse de manera equivalente utilizando la &lt;SPAN style="font-weight: 600;"&gt;&lt;STRONG&gt;API Java&lt;/STRONG&gt;&lt;/SPAN&gt;.&lt;/P&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;Los Web Scripts suelen constar de:&lt;/P&gt;&lt;UL style="color: #24292e; background-color: #ffffff; margin-bottom: 16px; padding-left: 2em;"&gt;&lt;LI&gt;Un XML de descripción y declaración del servicio&lt;/LI&gt;&lt;LI style="margin-top: 0.25em;"&gt;Un JavaScript o una clase Java de controlador para realizar las operaciones de repositorio requeridas&lt;/LI&gt;&lt;LI style="margin-top: 0.25em;"&gt;Un FTL de vista para representar el resultado en HTML o JSON&lt;/LI&gt;&lt;/UL&gt;&lt;H3 style="color: #24292e; background-color: #ffffff; font-weight: 600; font-size: 1.25em; margin-top: 24px; margin-bottom: 16px;" id="toc-hId--1361829770"&gt;Descripción del Web Script&lt;/H3&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;Creamos el fichero &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;webscripts/keensoft/files/createfile.post.desc.xml&lt;/CODE&gt; en nuestro proyecto de repositorio Alfresco SDK estándar. Es importante que el fichero esté bajo el directorio &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;webscripts&lt;/CODE&gt; y que incluya como extensión el verbo del HTTP (&lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;post&lt;/CODE&gt; en este caso) seguido de &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;desc.xml&lt;/CODE&gt;. Las carpetas intermedias &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;keensoft\files&lt;/CODE&gt; son arbitrarias, pueden crearse cualquier otras.&lt;/P&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;Este fichero define:&lt;/P&gt;&lt;UL style="color: #24292e; background-color: #ffffff; margin-bottom: 16px; padding-left: 2em;"&gt;&lt;LI&gt;La URL en la que estará disponible el servicio, que será precedida por &lt;A href="http://localhost:8080/alfresco/s/" rel="nofollow noopener noreferrer" style="color: #0366d6; background-color: transparent;"&gt;http://localhost:8080/alfresco/s/&lt;/A&gt; para invocarlo&lt;UL style="padding-left: 2em;"&gt;&lt;LI&gt;En este caso &lt;A href="http://localhost:8080/alfresco/s/files/create" rel="nofollow noopener noreferrer" style="color: #0366d6; background-color: transparent;"&gt;http://localhost:8080/alfresco/s/files/create&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;LI style="margin-top: 0.25em;"&gt;El tipo de autenticación requerida (usuario)&lt;/LI&gt;&lt;LI style="margin-top: 0.25em;"&gt;El formato de la respuesta (JSON)&lt;/LI&gt;&lt;/UL&gt;&lt;DIV class="" style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;&lt;PRE style="background-color: #f6f8fa; padding: 16px;"&gt;&amp;lt;&lt;SPAN class="" style="color: #22863a;"&gt;webscript&lt;/SPAN&gt;&amp;gt;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; &amp;lt;&lt;SPAN class="" style="color: #22863a;"&gt;shortname&lt;/SPAN&gt;&amp;gt;Create file Sample Web Script&amp;lt;/&lt;SPAN class="" style="color: #22863a;"&gt;shortname&lt;/SPAN&gt;&amp;gt;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; &amp;lt;&lt;SPAN class="" style="color: #22863a;"&gt;description&lt;/SPAN&gt;&amp;gt;Create sample file at destination&amp;lt;/&lt;SPAN class="" style="color: #22863a;"&gt;description&lt;/SPAN&gt;&amp;gt;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; &amp;lt;&lt;SPAN class="" style="color: #22863a;"&gt;url&lt;/SPAN&gt;&amp;gt;/files/create&amp;lt;/&lt;SPAN class="" style="color: #22863a;"&gt;url&lt;/SPAN&gt;&amp;gt;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; &amp;lt;&lt;SPAN class="" style="color: #22863a;"&gt;authentication&lt;/SPAN&gt;&amp;gt;user&amp;lt;/&lt;SPAN class="" style="color: #22863a;"&gt;authentication&lt;/SPAN&gt;&amp;gt;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; &amp;lt;&lt;SPAN class="" style="color: #22863a;"&gt;format&lt;/SPAN&gt; &lt;SPAN class="" style="color: #6f42c1;"&gt;default&lt;/SPAN&gt;=&lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;json&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;gt;&amp;lt;/&lt;SPAN class="" style="color: #22863a;"&gt;format&lt;/SPAN&gt;&amp;gt; &lt;BR /&gt;&amp;lt;/&lt;SPAN class="" style="color: #22863a;"&gt;webscript&lt;/SPAN&gt;&amp;gt;&lt;/PRE&gt;&lt;/DIV&gt;&lt;H3 style="color: #24292e; background-color: #ffffff; font-weight: 600; font-size: 1.25em; margin-top: 24px; margin-bottom: 16px;" id="toc-hId--474326089"&gt;Controlador del Web Script&lt;/H3&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;A continuación definimos la lógica del servicio mediante la API JavaScript de repositorio de Alfresco. Es importante notar que este JavaScript es de servidor y que es por tanto equivalente a la API Java del producto.&lt;/P&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;Para ello creamos el fichero &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;webscripts/keensoft/files/createfile.post.json.js&lt;/CODE&gt;. Requiere ser creado en la misma carpeta que el descriptor y que la extensión sea el verbo del HTTP (&lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;post&lt;/CODE&gt; en este caso) y el formato de los datos en la petición (&lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;json&lt;/CODE&gt; en este caso).&lt;/P&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;La implementación realizada extrae la información del objeto JSON &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;destination&lt;/CODE&gt; que es enviado en la petición (es el &lt;EM&gt;NodeRef&lt;/EM&gt; de una carpeta) y crea un fichero &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;newFile.txt&lt;/CODE&gt; con el contenido &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;original text&lt;/CODE&gt; en esa carpeta. Por último pone la información del fichero creado en el objeto &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;model&lt;/CODE&gt; para que pueda ser utilizada en la vista FTL.&lt;/P&gt;&lt;DIV class="" style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;&lt;PRE style="background-color: #f6f8fa; padding: 16px;"&gt;&lt;SPAN class="" style="color: #6a737d;"&gt;&lt;SPAN class="" style="color: #6a737d;"&gt;//&lt;/SPAN&gt; extract arguments from JSON&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN class="" style="color: #d73a49;"&gt;var&lt;/SPAN&gt; destination &lt;SPAN class="" style="color: #d73a49;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="" style="color: #24292e;"&gt;json&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #005cc5;"&gt;get&lt;/SPAN&gt;(&lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;destination&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;); &lt;BR /&gt;&lt;BR /&gt;&lt;SPAN class="" style="color: #6a737d;"&gt;&lt;SPAN class="" style="color: #6a737d;"&gt;//&lt;/SPAN&gt; search for folder&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN class="" style="color: #d73a49;"&gt;var&lt;/SPAN&gt; folder &lt;SPAN class="" style="color: #d73a49;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="" style="color: #24292e;"&gt;search&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #6f42c1;"&gt;findNode&lt;/SPAN&gt;(destination); &lt;BR /&gt;&lt;BR /&gt;&lt;SPAN class="" style="color: #6a737d;"&gt;&lt;SPAN class="" style="color: #6a737d;"&gt;//&lt;/SPAN&gt; create sample file&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN class="" style="color: #d73a49;"&gt;var&lt;/SPAN&gt; doc &lt;SPAN class="" style="color: #d73a49;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="" style="color: #24292e;"&gt;folder&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #6f42c1;"&gt;createFile&lt;/SPAN&gt;(&lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;newFile.txt&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;);&lt;BR /&gt;&lt;SPAN class="" style="color: #24292e;"&gt;doc&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #005cc5;"&gt;content&lt;/SPAN&gt; &lt;SPAN class="" style="color: #d73a49;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;original text&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;; &lt;BR /&gt;&lt;BR /&gt;&lt;SPAN class="" style="color: #6a737d;"&gt;&lt;SPAN class="" style="color: #6a737d;"&gt;//&lt;/SPAN&gt; put information for FTL view&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN class="" style="color: #24292e;"&gt;model&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;doc&lt;/SPAN&gt; &lt;SPAN class="" style="color: #d73a49;"&gt;=&lt;/SPAN&gt; doc;&lt;/PRE&gt;&lt;/DIV&gt;&lt;H3 style="color: #24292e; background-color: #ffffff; font-weight: 600; font-size: 1.25em; margin-top: 24px; margin-bottom: 16px;" id="toc-hId-413177592"&gt;Vista del Web Script&lt;/H3&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;Construimos la respuesta JSON en el fichero &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;webscripts/keensoft/files/createfile.post.json.ftl&lt;/CODE&gt;, que incluye como extensión el verbo HTTP (&lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;post&lt;/CODE&gt; en este caso), el formato de la respuesta (&lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;json&lt;/CODE&gt;) y el tipo de archivo (&lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;ftl&lt;/CODE&gt;).&lt;/P&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;En esta plantilla FTL (FreeMarker) disponemos de todos los datos que hayamos incluido en el objeto &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;model&lt;/CODE&gt; en el controlador (&lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;doc&lt;/CODE&gt; en nuestro caso). A continuación formamos el JSON incluyendo algunos valores del objeto &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;doc&lt;/CODE&gt;.&lt;/P&gt;&lt;DIV class="" style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;&lt;PRE style="background-color: #f6f8fa; padding: 16px;"&gt;{&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;&amp;nbsp; "&lt;/SPAN&gt;doc&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;: {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; "&lt;/SPAN&gt;nodeRef&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; : &lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;${doc.nodeRef}&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; "&lt;/SPAN&gt;name&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; : &lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;${doc.name}&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; } &lt;BR /&gt;}&lt;/PRE&gt;&lt;/DIV&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;Una vez realizados estos pasos, deberíamos ser capaces de crear un fichero &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;newFile.txt&lt;/CODE&gt; en la carpeta con &lt;EM&gt;NodeRef&lt;/EM&gt;&lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;workspace://SpacesStore/5418807b-cf50-4f74-85a2-f72bd3daa383&lt;/CODE&gt; realizando la siguiente petición:&lt;/P&gt;&lt;DIV class="" style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;&lt;PRE style="background-color: #f6f8fa; padding: 16px;"&gt;&lt;SPAN&gt;curl -X POST \&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&lt;/SPAN&gt;&amp;nbsp; &lt;A class="jive-link-external-small" href="http://localhost:8080/alfresco/s/files/create" rel="nofollow noopener noreferrer" target="_blank"&gt;http://localhost:8080/alfresco/s/files/create&lt;/A&gt;&lt;SPAN&gt; \&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; -H &lt;/SPAN&gt;&lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;'&lt;/SPAN&gt;authorization: Basic YWRtaW46YWRtaW4=&lt;SPAN class="" style="color: #032f62;"&gt;'&lt;/SPAN&gt;&lt;/SPAN&gt; \&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; -H &lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;'&lt;/SPAN&gt;content-type: application/json&lt;SPAN class="" style="color: #032f62;"&gt;'&lt;/SPAN&gt;&lt;/SPAN&gt; \&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; -d &lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;'&lt;/SPAN&gt;{ "destination" : "workspace://SpacesStore/5418807b-cf50-4f74-85a2-f72bd3daa383" }&lt;SPAN class="" style="color: #032f62;"&gt;'&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;/DIV&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;El bloque autorización en este ejemplo incluye &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;admin:admin&lt;/CODE&gt; pero es posible que deba ser cambiado en caso de que las credenciales de acceso a Alfresco sean diferentes.&lt;/P&gt;&lt;H2 style="color: #24292e; background-color: #ffffff; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #eaecef; font-weight: 600; font-size: 1.5em; margin-top: 24px; margin-bottom: 16px; padding-bottom: 0.3em;" id="toc-hId--1186831560"&gt;Invocando el Web Script desde Share&lt;/H2&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;Una vez que hemos construido el Web Script y está disponible, podemos realizar la invocación a la API REST desde nuestros componentes YUI de Share utilizando la clase de ayuda &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;Alfresco.util.Ajax.request&lt;/CODE&gt;. En el ejemplo vamos a modificar el fichero &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;custom-button-sharedfiles.js&lt;/CODE&gt; de la carpeta &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;resources/META-INF/sp/modules&lt;/CODE&gt; del proyecto Alfresco Share SDK &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;add-menu-dl-share&lt;/CODE&gt;.&lt;/P&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;Debajo del &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;alert&lt;/CODE&gt; existente realizamos las siguientes operaciones:&lt;/P&gt;&lt;UL style="color: #24292e; background-color: #ffffff; margin-bottom: 16px; padding-left: 2em;"&gt;&lt;LI&gt;Invocación asíncrona con &lt;EM&gt;callback&lt;/EM&gt; de éxito (&lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;successCallback&lt;/CODE&gt;) y &lt;EM&gt;callback&lt;/EM&gt; de error (&lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;failureCallback&lt;/CODE&gt;)&lt;/LI&gt;&lt;LI style="margin-top: 0.25em;"&gt;Construcción del JSON de envío en el atributo &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;dataObj&lt;/CODE&gt;&lt;/LI&gt;&lt;LI style="margin-top: 0.25em;"&gt;Decodificación del JSON de respuesta en la función &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;onRequestSucess&lt;/CODE&gt;&lt;/LI&gt;&lt;LI style="margin-top: 0.25em;"&gt;Mensajes de información para el usuario mediante la utilidad &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;Alfresco.util.PopupManager.displayMessage&lt;/CODE&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;DIV class="" style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;&lt;PRE style="background-color: #f6f8fa; padding: 16px;"&gt;&lt;SPAN class="" style="color: #d73a49;"&gt;...&lt;BR /&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN class="" style="color: #6a737d;"&gt;&lt;SPAN class="" style="color: #6a737d;"&gt;//&lt;/SPAN&gt; Write your own code&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN class="" style="color: #6f42c1;"&gt;alert&lt;/SPAN&gt;(&lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;Shared files: &lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="" style="color: #d73a49;"&gt;+&lt;/SPAN&gt; destination);&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&lt;BR /&gt;&lt;SPAN class="" style="color: #6a737d;"&gt;&lt;SPAN class="" style="color: #6a737d;"&gt;//&lt;/SPAN&gt; Invoke async repo Web Script by using HTTP POST and JSON&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN class="" style="color: #24292e;"&gt;Alfresco&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;util&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;Ajax&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #6f42c1;"&gt;request&lt;/SPAN&gt;(&amp;nbsp; &lt;BR /&gt;{&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; method&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt; &lt;SPAN class="" style="color: #24292e;"&gt;Alfresco&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;util&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;Ajax&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #005cc5;"&gt;POST&lt;/SPAN&gt;,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; url&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="" style="color: #24292e;"&gt;Alfresco&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;constants&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #005cc5;"&gt;PROXY_URI&lt;/SPAN&gt; &lt;SPAN class="" style="color: #d73a49;"&gt;+&lt;/SPAN&gt; &lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;/files/create&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; dataObj&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; destination&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt; destination&lt;BR /&gt;&amp;nbsp; },&lt;BR /&gt;&amp;nbsp; requestContentType&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt; &lt;SPAN class="" style="color: #24292e;"&gt;Alfresco&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;util&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;Ajax&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #005cc5;"&gt;JSON&lt;/SPAN&gt;,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; successCallback&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&lt;SPAN class="" style="color: #6f42c1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; fn&lt;/SPAN&gt;&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt; &lt;SPAN class="" style="color: #d73a49;"&gt;function&lt;/SPAN&gt; &lt;SPAN class="" style="color: #6f42c1;"&gt;onRequestSuccess&lt;/SPAN&gt;(&lt;SPAN class="" style="color: #24292e;"&gt;response&lt;/SPAN&gt;)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&lt;SPAN class="" style="color: #d73a49;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var&lt;/SPAN&gt; json &lt;SPAN class="" style="color: #d73a49;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="" style="color: #24292e;"&gt;Alfresco&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;util&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #6f42c1;"&gt;parseJSON&lt;/SPAN&gt;(&lt;SPAN class="" style="color: #24292e;"&gt;response&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;serverResponse&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #005cc5;"&gt;responseText&lt;/SPAN&gt;);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&lt;SPAN class="" style="color: #24292e;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Alfresco&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;util&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;PopupManager&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #6f42c1;"&gt;displayMessage&lt;/SPAN&gt;(&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt; &lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;File created: &lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="" style="color: #d73a49;"&gt;+&lt;/SPAN&gt; &lt;SPAN class="" style="color: #24292e;"&gt;json&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;doc&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #005cc5;"&gt;name&lt;/SPAN&gt; &lt;SPAN class="" style="color: #d73a49;"&gt;+&lt;/SPAN&gt; &lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt; (&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="" style="color: #d73a49;"&gt;+&lt;/SPAN&gt; &lt;SPAN class="" style="color: #24292e;"&gt;json&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;doc&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;nodeRef&lt;/SPAN&gt; &lt;SPAN class="" style="color: #d73a49;"&gt;+&lt;/SPAN&gt; &lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;)&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;})&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; },&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; scope&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt; &lt;SPAN class="" style="color: #005cc5;"&gt;this&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; },&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; failureCallback&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&lt;SPAN class="" style="color: #6f42c1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; fn&lt;/SPAN&gt;&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt; &lt;SPAN class="" style="color: #d73a49;"&gt;function&lt;/SPAN&gt; &lt;SPAN class="" style="color: #6f42c1;"&gt;onRequestFailure&lt;/SPAN&gt;()&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&lt;SPAN class="" style="color: #24292e;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Alfresco&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;util&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;PopupManager&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #6f42c1;"&gt;displayMessage&lt;/SPAN&gt;(&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt; &lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;File has not been created!&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; })&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; },&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; scope&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt; &lt;SPAN class="" style="color: #005cc5;"&gt;this&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; }&amp;nbsp; &lt;BR /&gt;});&lt;/PRE&gt;&lt;/DIV&gt;&lt;BLOCKQUOTE class="jive-quote" style="color: #6a737d; background-color: #ffffff; border-left-width: 0.25em; border-left-style: solid; border-left-color: #dfe2e5; margin: 0px 0px 0px !important 0px; padding: 0px 1em;"&gt;&lt;P&gt;Una vez realizado este cambio, cuando el botón "Botón" de la barra de herramientas de la Biblioteca de Documentos sea pulsado en la página "Ficheros compartidos", se creará un fichero "newFile.txt" en esa carpeta.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 22 Nov 2017 18:48:50 GMT</pubDate>
    <dc:creator>angelborroy</dc:creator>
    <dc:date>2017-11-22T18:48:50Z</dc:date>
    <item>
      <title>Como puedo crear carpetas y archivos en alfresco  a través de javascript ?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84083#M56568</link>
      <description>Buenos dias.Gracias a Angel Borroy‌ quien me orientó para agregar un boton a myfiles de alfresco Ejemplo, pero he intentado crear una carpeta o un archivo a traves del boton y no he podido solucionar he mirado javascript&amp;nbsp;este ejemplo y no me resulta. Al igual que&amp;nbsp;Doc pero sigo sin poder crearlocualq</description>
      <pubDate>Tue, 21 Nov 2017 16:20:18 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84083#M56568</guid>
      <dc:creator>andersonmercado</dc:creator>
      <dc:date>2017-11-21T16:20:18Z</dc:date>
    </item>
    <item>
      <title>Re: Como puedo crear carpetas y archivos en alfresco  a través de javascript ?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84084#M56569</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Quizá es la parte que le falta al tutorial: la conexión con el servidor Alfresco mediante Web Scripts o JavaScript de servidor. El principal problema es que ese JavaScript que estás utilizando es de servidor, no de cliente. ¿Dónde lo estás utilizando? ¿En qué fichero?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 21 Nov 2017 19:46:13 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84084#M56569</guid>
      <dc:creator>angelborroy</dc:creator>
      <dc:date>2017-11-21T19:46:13Z</dc:date>
    </item>
    <item>
      <title>Re: Como puedo crear carpetas y archivos en alfresco  a través de javascript ?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84085#M56570</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Veamos si con algo de ayuda puedes continuar el trabajo.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Desde la parte de JavaScript (en la extensión de YUI para el &lt;EM&gt;onClick&lt;/EM&gt; del botón) puedes invocar al repositorio mediante una llamada Ajax a un Web Script del repositorio.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Para realizar la llamada desde Share, utiliza algún ejemplo basado en&amp;nbsp;&lt;STRONG&gt;Alfresco.util.Ajax.request&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Para desarrollar el Web Script en repo (contendrá parte de ese código JavaScript que has descrito arriba), puedes consultar&amp;nbsp;&lt;A class="link-titled" href="http://docs.alfresco.com/community/concepts/ws-controll-script.html" title="http://docs.alfresco.com/community/concepts/ws-controll-script.html" rel="nofollow noopener noreferrer"&gt;Web script controller script | Alfresco Documentation&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;En cualquier caso, necesitarás que la lógica de creación de carpeta sea realizada en Repo (alfresco.war) y que el envío de datos y la respuesta sea tratada por Share (share.war). Esto equivaldría a dos proyectos Alfresco SDK (repo y share) o a un proyecto All-In-One con parte de repo y parte de share.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 21 Nov 2017 20:11:17 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84085#M56570</guid>
      <dc:creator>angelborroy</dc:creator>
      <dc:date>2017-11-21T20:11:17Z</dc:date>
    </item>
    <item>
      <title>Re: Como puedo crear carpetas y archivos en alfresco  a través de javascript ?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84086#M56571</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;en la acción del botón&amp;nbsp;custom-button-myfiles.js pero no me funciona&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 21 Nov 2017 21:59:34 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84086#M56571</guid>
      <dc:creator>andersonmercado</dc:creator>
      <dc:date>2017-11-21T21:59:34Z</dc:date>
    </item>
    <item>
      <title>Re: Como puedo crear carpetas y archivos en alfresco  a través de javascript ?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84087#M56572</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;es decir creo la lógica de carpetas a través del webscript y lo invoco a través&amp;nbsp;&lt;SPAN style="color: #727174; background-color: #ffffff;"&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;ejemplo basado en&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG style="color: #727174; background-color: #ffffff; border: 0px; font-weight: bold; font-size: 14px;"&gt;Alfresco.util.Ajax.request ?&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 21 Nov 2017 22:02:29 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84087#M56572</guid>
      <dc:creator>andersonmercado</dc:creator>
      <dc:date>2017-11-21T22:02:29Z</dc:date>
    </item>
    <item>
      <title>Re: Como puedo crear carpetas y archivos en alfresco  a través de javascript ?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84088#M56573</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;He seguido desarrollando el ejemplo aquí:&lt;/P&gt;&lt;P&gt;&lt;A href="https://github.com/angelborroy/alfresco-add-menu-sample" rel="nofollow noopener noreferrer"&gt;https://github.com/angelborroy/alfresco-add-menu-sample&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Espero que te sirva de ayuda. Esta es una de las partes menos documentadas de Alfresco...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;H1 style="color: #24292e; background-color: #ffffff; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #eaecef; font-weight: 600; font-size: 2em; margin: 24px 0px 16px; padding-bottom: 0.3em;" id="toc-hId-478071794"&gt;Alfresco: Cómo desarrollar la lógica de repositorio asociada al botón&lt;/H1&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;&lt;EM&gt;Share&lt;/EM&gt; es una aplicación web de cliente que no contiene lógica de negocio. Por tanto, si el botón necesita realizar operaciones en el repositorio de Alfresco será necesario desarrollar esa lógica en un proyecto de Repo que sea invocado desde &lt;EM&gt;Share&lt;/EM&gt; a través de una invocación REST.&lt;/P&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;En esta segunda parte se describen componentes del proyecto de Repo &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;add-menu-dl-repo&lt;/CODE&gt; y una modificación en el proyecto &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;add-menu-dl-share&lt;/CODE&gt; para invocar a la lógica de repositorio.&lt;/P&gt;&lt;H2 style="color: #24292e; background-color: #ffffff; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #eaecef; font-weight: 600; font-size: 1.5em; margin-top: 24px; margin-bottom: 16px; padding-bottom: 0.3em;" id="toc-hId--441878988"&gt;Desarrollar un Web Script de repositorio&lt;/H2&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;Alfresco dispone de una API de desarrollo de servicios REST denominada &lt;SPAN style="font-weight: 600;"&gt;&lt;STRONG&gt;Web Script&lt;/STRONG&gt;&lt;/SPAN&gt;. En este caso vamos a desarrollar un servicio REST que crea un fichero en la carpeta indicada. Por convención, las operaciones de creación en las APIs REST se realizan mediante HTTP POST y por comodidad vamos a realizar el intercambio de información en formato JSON.&lt;/P&gt;&lt;BLOCKQUOTE class="jive-quote" style="color: #6a737d; background-color: #ffffff; border-left-width: 0.25em; border-left-style: solid; border-left-color: #dfe2e5; margin: 0px 0px 16px; padding: 0px 1em;"&gt;&lt;P&gt;Pueden desarrollarse otro tipo de Web Scripts mediante HTTP GET, PUT o DELETE o enviar los parámetros de la URL.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;La lógica del Web Script será desarrollada utilizando la &lt;SPAN style="font-weight: 600;"&gt;&lt;STRONG&gt;API JavaScript&lt;/STRONG&gt;&lt;/SPAN&gt; de servidor de Alfresco basada en Rhino, aunque podría desarrollarse de manera equivalente utilizando la &lt;SPAN style="font-weight: 600;"&gt;&lt;STRONG&gt;API Java&lt;/STRONG&gt;&lt;/SPAN&gt;.&lt;/P&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;Los Web Scripts suelen constar de:&lt;/P&gt;&lt;UL style="color: #24292e; background-color: #ffffff; margin-bottom: 16px; padding-left: 2em;"&gt;&lt;LI&gt;Un XML de descripción y declaración del servicio&lt;/LI&gt;&lt;LI style="margin-top: 0.25em;"&gt;Un JavaScript o una clase Java de controlador para realizar las operaciones de repositorio requeridas&lt;/LI&gt;&lt;LI style="margin-top: 0.25em;"&gt;Un FTL de vista para representar el resultado en HTML o JSON&lt;/LI&gt;&lt;/UL&gt;&lt;H3 style="color: #24292e; background-color: #ffffff; font-weight: 600; font-size: 1.25em; margin-top: 24px; margin-bottom: 16px;" id="toc-hId--1361829770"&gt;Descripción del Web Script&lt;/H3&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;Creamos el fichero &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;webscripts/keensoft/files/createfile.post.desc.xml&lt;/CODE&gt; en nuestro proyecto de repositorio Alfresco SDK estándar. Es importante que el fichero esté bajo el directorio &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;webscripts&lt;/CODE&gt; y que incluya como extensión el verbo del HTTP (&lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;post&lt;/CODE&gt; en este caso) seguido de &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;desc.xml&lt;/CODE&gt;. Las carpetas intermedias &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;keensoft\files&lt;/CODE&gt; son arbitrarias, pueden crearse cualquier otras.&lt;/P&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;Este fichero define:&lt;/P&gt;&lt;UL style="color: #24292e; background-color: #ffffff; margin-bottom: 16px; padding-left: 2em;"&gt;&lt;LI&gt;La URL en la que estará disponible el servicio, que será precedida por &lt;A href="http://localhost:8080/alfresco/s/" rel="nofollow noopener noreferrer" style="color: #0366d6; background-color: transparent;"&gt;http://localhost:8080/alfresco/s/&lt;/A&gt; para invocarlo&lt;UL style="padding-left: 2em;"&gt;&lt;LI&gt;En este caso &lt;A href="http://localhost:8080/alfresco/s/files/create" rel="nofollow noopener noreferrer" style="color: #0366d6; background-color: transparent;"&gt;http://localhost:8080/alfresco/s/files/create&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;LI style="margin-top: 0.25em;"&gt;El tipo de autenticación requerida (usuario)&lt;/LI&gt;&lt;LI style="margin-top: 0.25em;"&gt;El formato de la respuesta (JSON)&lt;/LI&gt;&lt;/UL&gt;&lt;DIV class="" style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;&lt;PRE style="background-color: #f6f8fa; padding: 16px;"&gt;&amp;lt;&lt;SPAN class="" style="color: #22863a;"&gt;webscript&lt;/SPAN&gt;&amp;gt;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; &amp;lt;&lt;SPAN class="" style="color: #22863a;"&gt;shortname&lt;/SPAN&gt;&amp;gt;Create file Sample Web Script&amp;lt;/&lt;SPAN class="" style="color: #22863a;"&gt;shortname&lt;/SPAN&gt;&amp;gt;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; &amp;lt;&lt;SPAN class="" style="color: #22863a;"&gt;description&lt;/SPAN&gt;&amp;gt;Create sample file at destination&amp;lt;/&lt;SPAN class="" style="color: #22863a;"&gt;description&lt;/SPAN&gt;&amp;gt;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; &amp;lt;&lt;SPAN class="" style="color: #22863a;"&gt;url&lt;/SPAN&gt;&amp;gt;/files/create&amp;lt;/&lt;SPAN class="" style="color: #22863a;"&gt;url&lt;/SPAN&gt;&amp;gt;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; &amp;lt;&lt;SPAN class="" style="color: #22863a;"&gt;authentication&lt;/SPAN&gt;&amp;gt;user&amp;lt;/&lt;SPAN class="" style="color: #22863a;"&gt;authentication&lt;/SPAN&gt;&amp;gt;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; &amp;lt;&lt;SPAN class="" style="color: #22863a;"&gt;format&lt;/SPAN&gt; &lt;SPAN class="" style="color: #6f42c1;"&gt;default&lt;/SPAN&gt;=&lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;json&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;gt;&amp;lt;/&lt;SPAN class="" style="color: #22863a;"&gt;format&lt;/SPAN&gt;&amp;gt; &lt;BR /&gt;&amp;lt;/&lt;SPAN class="" style="color: #22863a;"&gt;webscript&lt;/SPAN&gt;&amp;gt;&lt;/PRE&gt;&lt;/DIV&gt;&lt;H3 style="color: #24292e; background-color: #ffffff; font-weight: 600; font-size: 1.25em; margin-top: 24px; margin-bottom: 16px;" id="toc-hId--474326089"&gt;Controlador del Web Script&lt;/H3&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;A continuación definimos la lógica del servicio mediante la API JavaScript de repositorio de Alfresco. Es importante notar que este JavaScript es de servidor y que es por tanto equivalente a la API Java del producto.&lt;/P&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;Para ello creamos el fichero &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;webscripts/keensoft/files/createfile.post.json.js&lt;/CODE&gt;. Requiere ser creado en la misma carpeta que el descriptor y que la extensión sea el verbo del HTTP (&lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;post&lt;/CODE&gt; en este caso) y el formato de los datos en la petición (&lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;json&lt;/CODE&gt; en este caso).&lt;/P&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;La implementación realizada extrae la información del objeto JSON &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;destination&lt;/CODE&gt; que es enviado en la petición (es el &lt;EM&gt;NodeRef&lt;/EM&gt; de una carpeta) y crea un fichero &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;newFile.txt&lt;/CODE&gt; con el contenido &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;original text&lt;/CODE&gt; en esa carpeta. Por último pone la información del fichero creado en el objeto &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;model&lt;/CODE&gt; para que pueda ser utilizada en la vista FTL.&lt;/P&gt;&lt;DIV class="" style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;&lt;PRE style="background-color: #f6f8fa; padding: 16px;"&gt;&lt;SPAN class="" style="color: #6a737d;"&gt;&lt;SPAN class="" style="color: #6a737d;"&gt;//&lt;/SPAN&gt; extract arguments from JSON&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN class="" style="color: #d73a49;"&gt;var&lt;/SPAN&gt; destination &lt;SPAN class="" style="color: #d73a49;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="" style="color: #24292e;"&gt;json&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #005cc5;"&gt;get&lt;/SPAN&gt;(&lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;destination&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;); &lt;BR /&gt;&lt;BR /&gt;&lt;SPAN class="" style="color: #6a737d;"&gt;&lt;SPAN class="" style="color: #6a737d;"&gt;//&lt;/SPAN&gt; search for folder&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN class="" style="color: #d73a49;"&gt;var&lt;/SPAN&gt; folder &lt;SPAN class="" style="color: #d73a49;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="" style="color: #24292e;"&gt;search&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #6f42c1;"&gt;findNode&lt;/SPAN&gt;(destination); &lt;BR /&gt;&lt;BR /&gt;&lt;SPAN class="" style="color: #6a737d;"&gt;&lt;SPAN class="" style="color: #6a737d;"&gt;//&lt;/SPAN&gt; create sample file&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN class="" style="color: #d73a49;"&gt;var&lt;/SPAN&gt; doc &lt;SPAN class="" style="color: #d73a49;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="" style="color: #24292e;"&gt;folder&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #6f42c1;"&gt;createFile&lt;/SPAN&gt;(&lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;newFile.txt&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;);&lt;BR /&gt;&lt;SPAN class="" style="color: #24292e;"&gt;doc&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #005cc5;"&gt;content&lt;/SPAN&gt; &lt;SPAN class="" style="color: #d73a49;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;original text&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;; &lt;BR /&gt;&lt;BR /&gt;&lt;SPAN class="" style="color: #6a737d;"&gt;&lt;SPAN class="" style="color: #6a737d;"&gt;//&lt;/SPAN&gt; put information for FTL view&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN class="" style="color: #24292e;"&gt;model&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;doc&lt;/SPAN&gt; &lt;SPAN class="" style="color: #d73a49;"&gt;=&lt;/SPAN&gt; doc;&lt;/PRE&gt;&lt;/DIV&gt;&lt;H3 style="color: #24292e; background-color: #ffffff; font-weight: 600; font-size: 1.25em; margin-top: 24px; margin-bottom: 16px;" id="toc-hId-413177592"&gt;Vista del Web Script&lt;/H3&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;Construimos la respuesta JSON en el fichero &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;webscripts/keensoft/files/createfile.post.json.ftl&lt;/CODE&gt;, que incluye como extensión el verbo HTTP (&lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;post&lt;/CODE&gt; en este caso), el formato de la respuesta (&lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;json&lt;/CODE&gt;) y el tipo de archivo (&lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;ftl&lt;/CODE&gt;).&lt;/P&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;En esta plantilla FTL (FreeMarker) disponemos de todos los datos que hayamos incluido en el objeto &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;model&lt;/CODE&gt; en el controlador (&lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;doc&lt;/CODE&gt; en nuestro caso). A continuación formamos el JSON incluyendo algunos valores del objeto &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;doc&lt;/CODE&gt;.&lt;/P&gt;&lt;DIV class="" style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;&lt;PRE style="background-color: #f6f8fa; padding: 16px;"&gt;{&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;&amp;nbsp; "&lt;/SPAN&gt;doc&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;: {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; "&lt;/SPAN&gt;nodeRef&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; : &lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;${doc.nodeRef}&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; "&lt;/SPAN&gt;name&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; : &lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;${doc.name}&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; } &lt;BR /&gt;}&lt;/PRE&gt;&lt;/DIV&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;Una vez realizados estos pasos, deberíamos ser capaces de crear un fichero &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;newFile.txt&lt;/CODE&gt; en la carpeta con &lt;EM&gt;NodeRef&lt;/EM&gt;&lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;workspace://SpacesStore/5418807b-cf50-4f74-85a2-f72bd3daa383&lt;/CODE&gt; realizando la siguiente petición:&lt;/P&gt;&lt;DIV class="" style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;&lt;PRE style="background-color: #f6f8fa; padding: 16px;"&gt;&lt;SPAN&gt;curl -X POST \&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&lt;/SPAN&gt;&amp;nbsp; &lt;A class="jive-link-external-small" href="http://localhost:8080/alfresco/s/files/create" rel="nofollow noopener noreferrer" target="_blank"&gt;http://localhost:8080/alfresco/s/files/create&lt;/A&gt;&lt;SPAN&gt; \&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; -H &lt;/SPAN&gt;&lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;'&lt;/SPAN&gt;authorization: Basic YWRtaW46YWRtaW4=&lt;SPAN class="" style="color: #032f62;"&gt;'&lt;/SPAN&gt;&lt;/SPAN&gt; \&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; -H &lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;'&lt;/SPAN&gt;content-type: application/json&lt;SPAN class="" style="color: #032f62;"&gt;'&lt;/SPAN&gt;&lt;/SPAN&gt; \&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; -d &lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;'&lt;/SPAN&gt;{ "destination" : "workspace://SpacesStore/5418807b-cf50-4f74-85a2-f72bd3daa383" }&lt;SPAN class="" style="color: #032f62;"&gt;'&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;/DIV&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;El bloque autorización en este ejemplo incluye &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;admin:admin&lt;/CODE&gt; pero es posible que deba ser cambiado en caso de que las credenciales de acceso a Alfresco sean diferentes.&lt;/P&gt;&lt;H2 style="color: #24292e; background-color: #ffffff; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #eaecef; font-weight: 600; font-size: 1.5em; margin-top: 24px; margin-bottom: 16px; padding-bottom: 0.3em;" id="toc-hId--1186831560"&gt;Invocando el Web Script desde Share&lt;/H2&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;Una vez que hemos construido el Web Script y está disponible, podemos realizar la invocación a la API REST desde nuestros componentes YUI de Share utilizando la clase de ayuda &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;Alfresco.util.Ajax.request&lt;/CODE&gt;. En el ejemplo vamos a modificar el fichero &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;custom-button-sharedfiles.js&lt;/CODE&gt; de la carpeta &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;resources/META-INF/sp/modules&lt;/CODE&gt; del proyecto Alfresco Share SDK &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;add-menu-dl-share&lt;/CODE&gt;.&lt;/P&gt;&lt;P style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;Debajo del &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;alert&lt;/CODE&gt; existente realizamos las siguientes operaciones:&lt;/P&gt;&lt;UL style="color: #24292e; background-color: #ffffff; margin-bottom: 16px; padding-left: 2em;"&gt;&lt;LI&gt;Invocación asíncrona con &lt;EM&gt;callback&lt;/EM&gt; de éxito (&lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;successCallback&lt;/CODE&gt;) y &lt;EM&gt;callback&lt;/EM&gt; de error (&lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;failureCallback&lt;/CODE&gt;)&lt;/LI&gt;&lt;LI style="margin-top: 0.25em;"&gt;Construcción del JSON de envío en el atributo &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;dataObj&lt;/CODE&gt;&lt;/LI&gt;&lt;LI style="margin-top: 0.25em;"&gt;Decodificación del JSON de respuesta en la función &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;onRequestSucess&lt;/CODE&gt;&lt;/LI&gt;&lt;LI style="margin-top: 0.25em;"&gt;Mensajes de información para el usuario mediante la utilidad &lt;CODE style="background-color: rgba(27, 31, 35, 0.0470588); padding: 0.2em 0.4em;"&gt;Alfresco.util.PopupManager.displayMessage&lt;/CODE&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;DIV class="" style="color: #24292e; background-color: #ffffff; margin-bottom: 16px;"&gt;&lt;PRE style="background-color: #f6f8fa; padding: 16px;"&gt;&lt;SPAN class="" style="color: #d73a49;"&gt;...&lt;BR /&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN class="" style="color: #6a737d;"&gt;&lt;SPAN class="" style="color: #6a737d;"&gt;//&lt;/SPAN&gt; Write your own code&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN class="" style="color: #6f42c1;"&gt;alert&lt;/SPAN&gt;(&lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;Shared files: &lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="" style="color: #d73a49;"&gt;+&lt;/SPAN&gt; destination);&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&lt;BR /&gt;&lt;SPAN class="" style="color: #6a737d;"&gt;&lt;SPAN class="" style="color: #6a737d;"&gt;//&lt;/SPAN&gt; Invoke async repo Web Script by using HTTP POST and JSON&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN class="" style="color: #24292e;"&gt;Alfresco&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;util&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;Ajax&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #6f42c1;"&gt;request&lt;/SPAN&gt;(&amp;nbsp; &lt;BR /&gt;{&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; method&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt; &lt;SPAN class="" style="color: #24292e;"&gt;Alfresco&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;util&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;Ajax&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #005cc5;"&gt;POST&lt;/SPAN&gt;,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; url&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt;&amp;nbsp; &lt;SPAN class="" style="color: #24292e;"&gt;Alfresco&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;constants&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #005cc5;"&gt;PROXY_URI&lt;/SPAN&gt; &lt;SPAN class="" style="color: #d73a49;"&gt;+&lt;/SPAN&gt; &lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;/files/create&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; dataObj&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; destination&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt; destination&lt;BR /&gt;&amp;nbsp; },&lt;BR /&gt;&amp;nbsp; requestContentType&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt; &lt;SPAN class="" style="color: #24292e;"&gt;Alfresco&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;util&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;Ajax&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #005cc5;"&gt;JSON&lt;/SPAN&gt;,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; successCallback&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&lt;SPAN class="" style="color: #6f42c1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; fn&lt;/SPAN&gt;&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt; &lt;SPAN class="" style="color: #d73a49;"&gt;function&lt;/SPAN&gt; &lt;SPAN class="" style="color: #6f42c1;"&gt;onRequestSuccess&lt;/SPAN&gt;(&lt;SPAN class="" style="color: #24292e;"&gt;response&lt;/SPAN&gt;)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&lt;SPAN class="" style="color: #d73a49;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var&lt;/SPAN&gt; json &lt;SPAN class="" style="color: #d73a49;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="" style="color: #24292e;"&gt;Alfresco&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;util&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #6f42c1;"&gt;parseJSON&lt;/SPAN&gt;(&lt;SPAN class="" style="color: #24292e;"&gt;response&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;serverResponse&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #005cc5;"&gt;responseText&lt;/SPAN&gt;);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&lt;SPAN class="" style="color: #24292e;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Alfresco&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;util&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;PopupManager&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #6f42c1;"&gt;displayMessage&lt;/SPAN&gt;(&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt; &lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;File created: &lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="" style="color: #d73a49;"&gt;+&lt;/SPAN&gt; &lt;SPAN class="" style="color: #24292e;"&gt;json&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;doc&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #005cc5;"&gt;name&lt;/SPAN&gt; &lt;SPAN class="" style="color: #d73a49;"&gt;+&lt;/SPAN&gt; &lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt; (&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;SPAN class="" style="color: #d73a49;"&gt;+&lt;/SPAN&gt; &lt;SPAN class="" style="color: #24292e;"&gt;json&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;doc&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;nodeRef&lt;/SPAN&gt; &lt;SPAN class="" style="color: #d73a49;"&gt;+&lt;/SPAN&gt; &lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;)&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;})&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; },&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; scope&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt; &lt;SPAN class="" style="color: #005cc5;"&gt;this&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; },&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; failureCallback&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&lt;SPAN class="" style="color: #6f42c1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; fn&lt;/SPAN&gt;&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt; &lt;SPAN class="" style="color: #d73a49;"&gt;function&lt;/SPAN&gt; &lt;SPAN class="" style="color: #6f42c1;"&gt;onRequestFailure&lt;/SPAN&gt;()&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&lt;SPAN class="" style="color: #24292e;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Alfresco&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;util&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #24292e;"&gt;PopupManager&lt;/SPAN&gt;.&lt;SPAN class="" style="color: #6f42c1;"&gt;displayMessage&lt;/SPAN&gt;(&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt; &lt;SPAN class="" style="color: #032f62;"&gt;&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;File has not been created!&lt;SPAN class="" style="color: #032f62;"&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; })&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; },&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; scope&lt;SPAN class="" style="color: #d73a49;"&gt;:&lt;/SPAN&gt; &lt;SPAN class="" style="color: #005cc5;"&gt;this&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; }&amp;nbsp; &lt;BR /&gt;});&lt;/PRE&gt;&lt;/DIV&gt;&lt;BLOCKQUOTE class="jive-quote" style="color: #6a737d; background-color: #ffffff; border-left-width: 0.25em; border-left-style: solid; border-left-color: #dfe2e5; margin: 0px 0px 0px !important 0px; padding: 0px 1em;"&gt;&lt;P&gt;Una vez realizado este cambio, cuando el botón "Botón" de la barra de herramientas de la Biblioteca de Documentos sea pulsado en la página "Ficheros compartidos", se creará un fichero "newFile.txt" en esa carpeta.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 22 Nov 2017 18:48:50 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84088#M56573</guid>
      <dc:creator>angelborroy</dc:creator>
      <dc:date>2017-11-22T18:48:50Z</dc:date>
    </item>
    <item>
      <title>Re: Como puedo crear carpetas y archivos en alfresco  a través de javascript ?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84089#M56574</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A __default_attr="170834" __jive_macro_name="user" _jive_internal="true" data-id="170834" data-objecttype="3" data-type="person" href="https://community.alfresco.com/people/andersonmercado" rel="nofollow noopener noreferrer"&gt;&lt;/A&gt;‌, ¿te ha sido útil esta información?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 24 Nov 2017 14:25:20 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84089#M56574</guid>
      <dc:creator>angelborroy</dc:creator>
      <dc:date>2017-11-24T14:25:20Z</dc:date>
    </item>
    <item>
      <title>Re: Como puedo crear carpetas y archivos en alfresco  a través de javascript ?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84090#M56575</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;B&gt;Angel Borroy&lt;/B&gt; &lt;A class="jive-link-badge j-select-badge j-selected-badge" data-badge-icon-url="https://rewards.imgix.net/prod_ams/eabb85ec-a958-4a44-8dfd-b18b11ae0532/5751d9ad-65e6-497f-8587-8422612e8c40" data-badge-id="5751d9ad-65e6-497f-8587-8422612e8c40" data-badge-name="Buen trabajo" data-badge-user-id="75627" href="http://userbadge" rel="nofollow noopener noreferrer"&gt;&lt;IMG class="jive-icon-med j-select-badge-image" src="https://rewards.imgix.net/prod_ams/eabb85ec-a958-4a44-8dfd-b18b11ae0532/5751d9ad-65e6-497f-8587-8422612e8c40" /&gt;Buen trabajo&lt;/A&gt;&lt;/P&gt;&lt;P&gt;Me ha sido muy útil tu ayuda, gracias por la información&amp;nbsp;&lt;/P&gt;&lt;P&gt;quiero hacerte otra consulta el webscript el controlador lo hice con java. como puedo recuperar los valores de dataObj&amp;nbsp;&lt;/P&gt;&lt;P&gt;en el controlador java ?&amp;nbsp;&lt;/P&gt;&lt;P&gt;las carpetas las estoy creando con FileFolderService.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 Dec 2017 17:09:09 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84090#M56575</guid>
      <dc:creator>andersonmercado</dc:creator>
      <dc:date>2017-12-06T17:09:09Z</dc:date>
    </item>
    <item>
      <title>Re: Como puedo crear carpetas y archivos en alfresco  a través de javascript ?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84091#M56576</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Me alegro de que vayas progresando.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Vamos a ver si te apañas con esto y si no, ampliaré el tutorial.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Tienes un buen ejemplo sobre cómo parsear el JSON de una &lt;EM&gt;WebScriptRequest&lt;/EM&gt; en&amp;nbsp;&lt;A href="https://github.com/share-extras/js-console/blob/master/javascript-console-repo/src/main/java/de/fme/jsconsole/JavascriptConsoleRequest.java#L78" rel="nofollow noopener noreferrer"&gt;https://github.com/share-extras/js-console/blob/master/javascript-console-repo/src/main/java/de/fme/jsconsole/JavascriptConsoleRequest.java#L78&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;En esa misma clase encontrarás cómo parsear los parámetros de la &lt;EM&gt;WebScriptRequest&lt;/EM&gt; en caso de que vengan en la &lt;EM&gt;query string&lt;/EM&gt;&amp;nbsp;&lt;A href="https://github.com/share-extras/js-console/blob/master/javascript-console-repo/src/main/java/de/fme/jsconsole/JavascriptConsoleRequest.java#L60" rel="nofollow noopener noreferrer"&gt;https://github.com/share-extras/js-console/blob/master/javascript-console-repo/src/main/java/de/fme/jsconsole/JavascriptConsoleRequest.java#L60&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ya me dices cómo te va.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 Dec 2017 18:28:29 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84091#M56576</guid>
      <dc:creator>angelborroy</dc:creator>
      <dc:date>2017-12-06T18:28:29Z</dc:date>
    </item>
    <item>
      <title>Re: Como puedo crear carpetas y archivos en alfresco  a través de javascript ?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84092#M56577</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hola &lt;B&gt;Angel Borroy&lt;/B&gt;‌ yo puedo reemplazar el dataObj por dataForm ? estoy haciendo algo similar estoy usando asprise de prueba el captura la imagen de escaner ya la implementé alfresco pero no se como puedo enviarla al controlador js para crear el archivo y guardarlo en el repositorio.&lt;/P&gt;&lt;P&gt;la verdad no he dado como enviarla&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 11 Dec 2017 17:49:31 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84092#M56577</guid>
      <dc:creator>eliosnieto</dc:creator>
      <dc:date>2017-12-11T17:49:31Z</dc:date>
    </item>
    <item>
      <title>Re: Como puedo crear carpetas y archivos en alfresco  a través de javascript ?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84093#M56578</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A __default_attr="168064" __jive_macro_name="user" _jive_internal="true" data-id="168064" data-objecttype="3" data-type="person" href="https://community.alfresco.com/people/eliosnieto" rel="nofollow noopener noreferrer"&gt;&lt;/A&gt;‌ no entiendo demasiado bien tu problema. Quizá si incluyes algo de código pueda ver cuál es el problema.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 12 Dec 2017 11:19:26 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84093#M56578</guid>
      <dc:creator>angelborroy</dc:creator>
      <dc:date>2017-12-12T11:19:26Z</dc:date>
    </item>
    <item>
      <title>Re: Como puedo crear carpetas y archivos en alfresco  a través de javascript ?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84094#M56579</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Gracias &lt;B&gt;Angel Borroy&lt;/B&gt;‌ ya capturo el json y lo convierto a pdf/a con pdfbox pero quiero que ese pdf que creo, poder hacerlo con característica ocr.&lt;/P&gt;&lt;P&gt;tesseract lo hace con un comando " tesseract img.jpg out -1 PDF " esto convierte la imagen a pdf con característica ocr buscable por windows. si agrego tesseract con maven el repo me genera error al tratar de subirlo e intente con java&amp;nbsp;&lt;/P&gt;&lt;P&gt;Runtime.getRuntime().exec(&lt;SPAN&gt;" tesseract img.jpg out -1 PDF "&lt;/SPAN&gt;) y tomarlo de la ruta donde lo genera pero java no lo crea&amp;nbsp;&lt;/P&gt;&lt;P&gt;que me recomendarías para continuar .&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Dec 2017 17:10:44 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84094#M56579</guid>
      <dc:creator>andersonmercado</dc:creator>
      <dc:date>2017-12-21T17:10:44Z</dc:date>
    </item>
    <item>
      <title>Re: Como puedo crear carpetas y archivos en alfresco  a través de javascript ?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84095#M56580</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Creo que esto te servirá de inspiración:&amp;nbsp;&lt;A href="https://github.com/keensoft/alfresco-simple-ocr/tree/master/simple-ocr-repo" rel="nofollow noopener noreferrer"&gt;https://github.com/keensoft/alfresco-simple-ocr/tree/master/simple-ocr-repo&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 21 Dec 2017 17:17:10 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/como-puedo-crear-carpetas-y-archivos-en-alfresco-a-trav%C3%A9s-de/m-p/84095#M56580</guid>
      <dc:creator>angelborroy</dc:creator>
      <dc:date>2017-12-21T17:17:10Z</dc:date>
    </item>
  </channel>
</rss>

