Hola a todos,
Estoy intentando modificar los metadatos de un documento a través de la REST API de Alfresco. Realizo la llamada correctamente y me devuelve "success": true. Pero cuando voy al documento no me ha modificado ningún dato. Mi código es el siguiente:
try {
HttpClient client = new HttpClient();
String uploadUrl = "http://00.00.00.00:8080/alfresco/service/api/metadata/node/workspace/SpacesStore/e8ab1cf6-64ee-46f8-..." + ticket;
PostMethod post = new PostMethod(uploadUrl);
JSONObject metadatos = new JSONObject();
metadatos.put("title", "SELA");
metadatos.put("description", "SELA");
JSONObject properties = new JSONObject();
properties.put("properties", metadatos);
StringRequestEntity requestEntity = new StringRequestEntity(
properties.toString(),
"application/json",
"UTF-8");
post.setDoAuthentication(true);
post.setRequestHeader("Content-Type", "application/json");
post.setRequestEntity(requestEntity);
int status = client.executeMethod(post);
System.out.println(post.getResponseBodyAsString());
post.releaseConnection();
if (status != HttpStatus.SC_OK) {
System.err.println("Method failed: " + post.getStatusLine());
}
} catch (IOException e) {
e.printStackTrace();
}
Y el JSON que estoy generando y enviando es este:
{
"properties": {
"cm:title": "SELA",
"cm:description": "SELA"
}
}
URL que estoy enviando:
http://00.00.00.00:8080/alfresco/service/api/metadata/node/workspace/SpacesStore/e8ab1cf6-64ee-46f8-b6ad-4d1e7524844d?TICKET_123...
La verdad no veo cual puede ser el problema. ¿Estoy construyendo mal el JSON? o ¿Hay algo que esté haciendo mal?
Os agradecería cualquier ayuda.
Muchas gracias.
Solved! Go to Solution.
Ya encontré el problema, en la requestEntity estaba poniendo "application/json" en vez del tipo mime
del documento que quería modificar. Quedaría de la siguiente manera.
StringRequestEntity requestEntity = new StringRequestEntity(
properties.toString(),
"application/pdf",
"UTF-8");
Ya encontré el problema, en la requestEntity estaba poniendo "application/json" en vez del tipo mime
del documento que quería modificar. Quedaría de la siguiente manera.
StringRequestEntity requestEntity = new StringRequestEntity(
properties.toString(),
"application/pdf",
"UTF-8");
Content from pre 2016 and from language groups that have been closed.
Content is read-only.
By using this site, you are agreeing to allow us to collect and use cookies as outlined in Alfresco’s Cookie Statement and Terms of Use (and you have a legitimate interest in Alfresco and our products, authorizing us to contact you in such methods). If you are not ok with these terms, please do not use this website.