AnsweredAssumed Answered

Webscript - Delete site

Question asked by igomez on Feb 5, 2012
Latest reply on Feb 7, 2012 by cristinamr
Hola.

A través de un script en Perl estoy intentando borrar un site pero no paro de obtener fallo de que la petición JSON no es correcta.

Mi petición en la siguiente:


   my $json =  '{"shortName": "'.$site.'"}';
   $h->header ('Content-Type' => 'application/json', Accept=>'application/json');
   my $GetReq = HTTP::Request->new
      (
      'POST',
      "http://$host:$port/share/service/modules/delete-site?alf_ticket=$alfTicket",
      $h,
            $json
      );

Y obtengo el siguiente error:
Error (500) : Error Interno del Servidor
   {
    "status" :
  {
    "code" : 500,
    "name" : "Internal Error",
    "description" : "An error inside the HTTP server which prevented it from fulfilling the request."
  }, 
 
  "message" : "01050031 Failed to execute script 'classpath*:alfresco\/site-webscripts\/org\/alfresco\/modules\/delete-site.post.json.js': 01050030 SyntaxError: syntax error (file:\/home\/isa\/alfresco-40b\/tomcat\/webapps\/share\/WEB-INF\/classes\/alfresco\/site-webscripts\/org\/alfresco\/modules\/delete-site.post.json.js#9(eval)#1)", 
  "exception" : "org.springframework.extensions.webscripts.WebScriptException - 01050031 Failed to execute script 'classpath*:alfresco\/site-webscripts\/org\/alfresco\/modules\/delete-site.post.json.js': 01050030 SyntaxError: syntax error (file:\/home\/isa\/alfresco-40b\/tomcat\/webapps\/share\/WEB-INF\/classes\/alfresco\/site-webscripts\/org\/alfresco\/modules\/delete-site.post.json.js#9(eval)#1)",

En ese .js el código es:

function main()
{
   var req = json.toString();
   var reqJSON = eval('(' + req + ')');
  
   // Call the repo to delete the site
   var conn = remote.connect("alfresco");
   var res = conn.del("/api/sites/" + reqJSON.shortName);
   var resJSON = eval('(' + res + ')');
  
   // Check if we got a positive result
   if (resJSON.success)
   {
      // Yes we did - now remove sitestore model artifacts…
     
      // remove dashboard page instance
      var dashboardURL = "site/" + reqJSON.shortName + "/dashboard";
      var dashboardPage = sitedata.getPage(dashboardURL);
      if (dashboardPage != null)
      {
         dashboardPage.remove();
      }
     
      // remove component instances
      var components = sitedata.findComponents("page", null, dashboardURL, null);
      for (var i=0; i < components.length; i++)
      {
         components[i].remove();
      }
     
      // the client will refresh on success
      model.success = true;
   }
   else
   {
      // Error occured - report back to client with the status and message
      status.setCode(resJSON.status.code, resJSON.message);
      model.success = false;
   }
}

main();

He probado a poner la petición JSON de todas las maneras y cuando no es ese fallo es otro… El caso es que quiero borrar un sitio desde Web Script y no puedo… ¿Alguna idea??

Graciasss  :)

Outcomes