AnsweredAssumed Answered

Subir contenido por Web Service en 4.2

Question asked by magarcia_sm on Feb 8, 2016
Latest reply on Feb 12, 2016 by magarcia_sm
Buenos días

Estamos haciendo una migración de código de Alfresco 3.0 a Alfresco 4.2. Una de las partes que nos queda por hacer es un cliente Java que sube desde cada pc de los usuarios contenido al respositorio de Alfresco utilizando los webservices de la API de java que hay en la versión 3.0

Este es el código que tenemos,donde lo que hacemos es introducir un fichero que queremos subir, al mismo tiempo que le añadimos un aspecto con sus respectivos valores (Versión 3.0)


ParentReference parentReference = new ParentReference(store, uuid, null, ASSOC_CONTAINS,
                       "{" + Constants.NAMESPACE_CONTENT_MODEL + "}" + name);
              
               // Define the content format for the content we are adding
               ContentFormat contentFormat = new ContentFormat("image/tiff", "UTF-8");
              
      
               NamedValue[] propertiesNV = new NamedValue[] { new NamedValue() };
               propertiesNV[0].setName("{http://www.alfresco.org/model/content/1.0}name");
               propertiesNV[0].setValue(name);
      
                      CMLCreate create = new CMLCreate("1", parentReference, null, null, null, Constants.TYPE_CONTENT, propertiesNV);
               NamedValue propAspect1 = Utils.createNamedValue(PROP_APPLY_OCR,
                     properties.getProperty("ocr"));
               NamedValue propAspect2 = Utils.createNamedValue(PROP_CIF_EMPRESA,
                     properties.getProperty("cif"));
               NamedValue propAspect3 = Utils.createNamedValue(PROP_USER_NAME,
                     properties.getProperty("user"));
               NamedValue[] aspectProps = new NamedValue[] {propAspect1, propAspect2, propAspect3};
               CMLAddAspect addAspect = new CMLAddAspect(ASPECT_OCR, aspectProps, null, "1");
               CML cml = new CML();
               cml.setCreate(new CMLCreate[]{create});
               cml.setAddAspect(new CMLAddAspect[]{addAspect});
      
         UpdateResult[] result = WebServiceFactory.getRepositoryService().update(cml);
             

               Reference newContentNode = result[0].getDestination();
               System.out.println("Ref new node " + newContentNode.getPath());
              
               FileInputStream fileInputStream = new FileInputStream(files.get(i));
               byte[] bytes = ContentUtils.convertToByteArray(fileInputStream);
             
               System.out.println("Add content. Bytes size " + bytes.length);
               Content content = contentService.write(newContentNode, Constants.PROP_CONTENT, bytes, contentFormat);
           
      
              
               System.out.println("Saved!!!! " + content.getUrl());



El problema es que cuando intentamos utilizar este código ahora con la versión 4.2f de Alfresco, nos da este error.


The Web Script /alfresco/api/RepositoryService has responded with a status of 404 - Not Found.

404 Description:   Requested resource is not available.

Message:   01050008 Script url network does not map to a Web Script.

Exception:   org.springframework.extensions.webscripts.WebScriptException - 01050008 Script url network does not map to a Web Script.


Y el error se produce justo cuando llamamos a la línea



UpdateResult[] result = WebServiceFactory.getRepositoryService().update(cml);


Alguna idea o enlace que explique cómo relizar esto ahora con la 4.2f

Gracias

Outcomes