Error RDI - NUXEO

Hola, buen día.

Estamos teniendo un inconveniente al intentar visualizar documentación de requisitos de ingreso. (Nuxeo)

El error que se presenta es:

Error al recuperar contenido. UUID: 83ebf6db-91e3-468f-bf92-a6c965a954f1

Realizamos las siguientes verificaciones:

  • Probamos acceso a la API de Nuxeo y funciona correctamente (autenticación OK).

  • Al consultar el UUID directamente:

    curl -u Administrator:Administrator http://IP:8080/nuxeo/api/v1/id/83ebf6db-91e3-468f-bf92-a6c965a954f1

    obtenemos:

    → 404 (no existe el documento)

  • Buscamos por DNI asociado (ej: 048475427) en Nuxeo:

    SELECT * FROM Document WHERE ecm:path STARTSWITH ‘/recursosPersonales/048475427’

    → No existen resultados (no hay carpeta ni documentos en Nuxeo)

  • En otros DNIs sí existen documentos correctamente.

Interpretamos que hay una inconsistencia donde Guaraní tiene registrado un UUID que ya no existe en Nuxeo (posible eliminación o pérdida de datos en el repositorio).

¿La solución correcta es eliminar el requisito y volver a subir la documentación desde Guaraní?

Desde ya muchas gracias.

Adjunto log:

Fecha: 17-03-2026 11:52:58

Operacion: Administrar Requisitos de una Persona
Usuario: toba
Version-PHP: 7.4.33
Servidor: siug.unau.edu.ar
URI: /aplicacion.php?ah=st69b96ac3a657c4.85935396&ai=guarani%7C%7C5000111
Referrer: Guarani - Autentificación de Usuarios
Host: 192.168.8.17

[ERROR][guarani] Error recuperar contenido: 83ebf6db-91e3-468f-bf92-a6c965a954f1
[ERROR][guarani] #0 /var/www/guarani/vendor/siu/rdi/RDILib/servicios/RDIServicioRecurso.php(184): RDIConectorCMIS->recuperarContenido()
#1 /var/www/guarani/php/nucleo/_lib/cliente_rdi/guarani_cliente_rdi_nucleo.php(123): RDIServicioRecurso->recuperarContenido()
#2 /var/www/guarani/php/nucleo/requisitos/requisitos_ingreso/requisitos_persona/cn_ent_requisito_de_persona.php(1164): guarani_cliente_rdi_nucleo::get_contenido_documento()
#3 /var/www/guarani/php/nucleo/requisitos/requisitos_ingreso/requisitos_persona/cn_ent_requisito_de_persona.php(1195): cn_ent_requisito_de_persona->ini_doc_digital_draft()
#4 /var/www/guarani/php/operaciones/requisitos/requisitos_ingreso/requisitos_persona/ci_edi_doc_draft.php(17): cn_ent_requisito_de_persona->get_path_descarga_doc_digital_draft()
#5 /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/toba_componente.php(221): ci_edi_doc_draft->conf__pant_documento()
#6 /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ci.php(617): toba_componente->invocar_callback()
#7 /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ci.php(633): toba_ci->pre_configurar()
#8 /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ci.php(475): toba_ci->configurar_dep()
#9 /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ei_pantalla.php(91): toba_ci->dependencia()
#10 /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ei.php(121): toba_ei_pantalla->aplicar_restricciones_funcionales()
#11 /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ci.php(618): toba_ei->post_configurar()
#12 /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ci.php(633): toba_ci->pre_configurar()
#13 /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ci.php(475): toba_ci->configurar_dep()
#14 /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ei_pantalla.php(91): toba_ci->dependencia()
#15 /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ei.php(121): toba_ei_pantalla->aplicar_restricciones_funcionales()
#16 /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ci.php(618): toba_ei->post_configurar()
#17 /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ci.php(633): toba_ci->pre_configurar()
#18 /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ci.php(475): toba_ci->configurar_dep()
#19 /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/toba_componente.php(544): toba_ci->dependencia()
#20 /var/www/guarani/php/operaciones/requisitos/requisitos_ingreso/requisitos_persona/ci_nav_req_persona.php(98): toba_componente->dep()
#21 /var/www/guarani/php/operaciones/requisitos/requisitos_ingreso/requisitos_persona/ci_nav_req_persona.php(147): ci_nav_req_persona->get_datos_ev_info()
#22 /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/toba_componente.php(221): ci_nav_req_persona->conf__edicion()
#23 /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ci.php(617): toba_componente->invocar_callback()
#24 /var/www/guarani/vendor/siu-toba/framework/php/nucleo/toba_solicitud_web.php(159): toba_ci->pre_configurar()
#25 /var/www/guarani/vendor/siu-toba/framework/php/nucleo/toba_solicitud_web.php(60): toba_solicitud_web->procesar_servicios()
#26 /var/www/guarani/vendor/siu-toba/framework/php/nucleo/toba_nucleo.php(96): toba_solicitud_web->procesar()
#27 /var/www/guarani/www/aplicacion.php(33): toba_nucleo->acceso_web()
#28 {main}
[ERROR][toba] guarani_error: Se produjo un error al intentar obtener el archivo en el repositorio digital.
[TRAZA]

guarani_cliente_rdi_nucleo::get_contenido_documento 

Archivo: /var/www/guarani/php/nucleo/_lib/cliente_rdi/guarani_cliente_rdi_nucleo.php, lInea 134

cn_ent_requisito_de_persona->ini_doc_digital_draft 

Archivo: /var/www/guarani/php/nucleo/requisitos/requisitos_ingreso/requisitos_persona/cn_ent_requisito_de_persona.php, lInea 1195

cn_ent_requisito_de_persona->get_path_descarga_doc_digital_draft 

Archivo: /var/www/guarani/php/operaciones/requisitos/requisitos_ingreso/requisitos_persona/ci_edi_doc_draft.php, lInea 17

ci_edi_doc_draft->conf__pant_documento 

Archivo: /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/toba_componente.php, lInea 221

toba_componente->invocar_callback 

Archivo: /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ci.php, lInea 617

toba_ci->pre_configurar 

Archivo: /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ci.php, lInea 633

toba_ci->configurar_dep 

Archivo: /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ci.php, lInea 475

toba_ci->dependencia 

Archivo: /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ei_pantalla.php, lInea 91

toba_ei_pantalla->aplicar_restricciones_funcionales 

Archivo: /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ei.php, lInea 121

toba_ei->post_configurar 

Archivo: /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ci.php, lInea 618

toba_ci->pre_configurar 

Archivo: /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ci.php, lInea 633

toba_ci->configurar_dep 

Archivo: /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ci.php, lInea 475

toba_ci->dependencia 

Archivo: /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ei_pantalla.php, lInea 91

toba_ei_pantalla->aplicar_restricciones_funcionales 

Archivo: /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ei.php, lInea 121

toba_ei->post_configurar 

Archivo: /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ci.php, lInea 618

toba_ci->pre_configurar 

Archivo: /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ci.php, lInea 633

toba_ci->configurar_dep 

Archivo: /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ci.php, lInea 475

toba_ci->dependencia 

Archivo: /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/toba_componente.php, lInea 544

toba_componente->dep 

Archivo: /var/www/guarani/php/operaciones/requisitos/requisitos_ingreso/requisitos_persona/ci_nav_req_persona.php, lInea 98

ci_nav_req_persona->get_datos_ev_info 

Archivo: /var/www/guarani/php/operaciones/requisitos/requisitos_ingreso/requisitos_persona/ci_nav_req_persona.php, lInea 147

ci_nav_req_persona->conf__edicion 

Archivo: /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/toba_componente.php, lInea 221

toba_componente->invocar_callback 

Archivo: /var/www/guarani/vendor/siu-toba/framework/php/nucleo/componentes/interface/toba_ci.php, lInea 617

toba_ci->pre_configurar 

Archivo: /var/www/guarani/vendor/siu-toba/framework/php/nucleo/toba_solicitud_web.php, lInea 159

toba_solicitud_web->procesar_servicios 

Archivo: /var/www/guarani/vendor/siu-toba/framework/php/nucleo/toba_solicitud_web.php, lInea 60

toba_solicitud_web->procesar 

Archivo: /var/www/guarani/vendor/siu-toba/framework/php/nucleo/toba_nucleo.php, lInea 96

toba_nucleo->acceso_web 

Archivo: /var/www/guarani/www/aplicacion.php, lInea 33

View Issue

Hola, buenas tardes.

Nosotros estamos teniendo el mismo inconveniente principalmente con documentos pendientes de validación, aunque tuvimos problemas con algunos casos con documentos ya validados. En la base de datos de Guaraní existe la referencia al archivo del requisito pero el mismo no se encuentra en Nuxeo.

Las pruebas que hicimos son las mismas que referencia Gerardo.

Desde autogestión se visualiza el siguiente mensaje al ingresar a la sección de la documentación (El servidor no está caído) El log muestra Error al recuperar contenido. UUID: ….

Desde Gestión el error ocurre al intentar ver el requisito desde el botón VER correspondiente.

hola Gerardo Milton buenas tardes

vamos analizar el tema en ambos casos y les enviamos una respuesta en breve si?

saludos!

Hola,

¿que versión de Guaraní tienen instalada?

Revisen Repositorio Digital Integrado para Legajo Digital.

¿en el Dashboard de Nuxeo ven el documento http://url_de_nuxeo/nuxeo/ui/#!/home?

¿que pasa si intentan acceder a estas URLs?

XML con metadatos del documento:
http://url_de_nuxeo/nuxeo/nxfile/default/83ebf6db-91e3-468f-bf92-a6c965a954f1?inline=true

Contenido del documento (lo va a querer descargar):
http://url_de_nuxeo/nuxeo/nxfile/default/83ebf6db-91e3-468f-bf92-a6c965a954f1/file:content

Obviamente reemplazando url_de_nuxeo por la URL (y puerto si es necesario) en cuestión.

Ademas les consultamos : por dónde los subieron los documentos? por gestión? o esto lo subió el alumno por preinscripción o autogestión? nos cuentan?

Saludos.

Hola, buen día. Estamos utilizando Guaraní versión 3.22.2.

Revisamos el Repositorio Digital Integrado para Legajo Digital:
y tenemos todo configurado segun esta en la documentacion. Les paso la config en rdi.ini por las dudas:

[guarani]
repositorio=‘http://000.000.0.00:8080/nuxeo/atom/cmis’
usuario=‘00000’
clave=‘000000’
conector=‘CMIS_ATOM’

En el dashboard de Nuxeo (http://—.—.-.–:8080/nuxeo/ui/#!/home) no se visualiza el documento con UUID 83ebf6db-91e3-468f-bf92-a6c965a954f1.
En pantalla nos dice: “La página solicitada ha sido movida o eliminada. Haga clic en los enlaces siguientes para volver a la aplicación”

Utilizando el gestor de búsqueda del dash no encuentra archivos para un caso donde la busqueda lo hacemos por DNI osea no esta guardando para los casos que no recupera.

XML con metadatos:

http://192.168.8.77:8080/nuxeo/nxfile/default/83ebf6db-91e3-468f-bf92-a6c965a954f1?inline=true

-----No existe el fichero o el directorio

Contenido del documento:

http://192.168.8.77:8080/nuxeo/nxfile/default/83ebf6db-91e3-468f-bf92-a6c965a954f1/file:content

—No existe el fichero o el directorio

Respecto a la carga del documento, fue realizada por preinscripción.

También entendemos que el sistema está guardando el ID del archivo en Guaraní, pero ¿se realiza algún control al momento de guardar el archivo? Porque en su momento el sistema le indica al alumno que el guardado fue exitoso, pero al intentar recuperarlo notamos que el archivo no existe; es decir, en realidad no se guardó.

Quedamos atentos.

Saludos.

Buen día, agrego infromación a lo que Gerardo esta comentando que nos sucede.

La falla en la recuperación comenzamos a notar luego de la actualización de la 3.21.3 a la 3.22.2

Para algunos aspirantes.

  1. Mismo aspirante subio documentación con éxito

  2. se procesó a gestión (inscribir a propuesta desde preinscripción)

  3. algunos documentos digitales no se pueden recuperar (igual a lo que comenta Milton )

ni desde gestión (al presionar el botón ver tira el error)

ni desde autogestión (al presionar sobre el botón Documento DIgital tira el error).

  1. Si se puede seguir subiendo archivos

  2. Si por gestión se elimina el requisito, desdse autogestion no pueden volver a subirlo. (Sospechamos habrá que borrar por base los id de documento)

  3. En Nuxeo vemos que el requisito no esta cargado (esta vacío)

Lo que nos queda por hacer ahora es borrar los id de documentos y pedir a los alumnos que vuelvan a subir los requisitos que fallan?

Hola Dani, Gerardo y Milton.

Sí, la solución inmediata para salir del paso es, como bien mencionan, borrando a mano de la tabla de preinscripción “sga_requisitos_digitales” la referencia al archivo inexistente para que puedan volver a cargarlos.

Pero lo más importante es tratar de encontrar la causa de por qué está sucediendo esto.

Por lo que estuvimos analizando en el código la función accion__guardar_documentacion de src/siu/operaciones/censo/controlador.php primero se manda a RDI y luego se guarda en la DB, con lo cual seria imposible que se guarde un UUID de algo que no se creo, ademas usa try/catch con lo cual si $id_recurso = $this->enviar_repositorio($path_file, $tipo_documento_digital); falla va directo al catch y no ejecuta kernel::persona()->datos()->set_requisito($datos);:

De esta forma pareciera que el problema no es que el archivo no se guardó e igual se grabó el hash (a menos que hayan personalizado dicha función). Sino que pareciera que más bien el archivo fue guardado correctamente y luego por algún motivo se eliminó del repositorio.

CONSULTAS:

Este repositorio de Nuxeo lo utilizan en algún otro sistema además del RDI de Guarani? Por ejemplo para Araí-Documentos.

Es posible que se hayan ejecutado comandos en el repositorio que hayan llevado al borrado de archivos?

Es posible que en algún momento hayan borrado los temporales de preinscripcion/src/siu/www/temp?

Notan algún patrón común entre los requisitos con los que están teniendo este problema? Es posible que se de con documentos que estén cargados con un “Tipo Digital” específico?

Saludos!

Estamos intentando replicar el caso en nuestros ambientes pero sin éxito.

Ustedes en sus ambientes de testeo no lo pueden replicar, no?

Porque estaría bueno poder contar con los logs de preinscripción al momento en que el aspirante carga el archivo para ver si se encuentra algún error allí.

Hola Martín, nosotros estamos en la 3.22.0, tenemos el RDI solo para Guaraní , vamos a intentar replicar el inconveniente en un ambiente de test. Por el momento estamos borrando el registro en sga_requisitos_digitales_draft que es donde mayormente tenemos inconvenientes y pedimos que vuelvan a cargar el documento. Por lo que pudimos ver, la situación se da cuando modifican y cambian un documento que todavía no se ha validado.

Un saludo, nos mantenemos en contacto.

Gracias por la info Milton!!

Vamos a probar con esto que mencionás a ver si podemos replicar el error.

Ahí probamos el caso de que el aspirante modifique el documento que había subido. Pero lamentablemente seguimos sin poder reproducir el error.

Buen dia! te respondo las preguntas.

  • Este repositorio de Nuxeo lo utilizan en algún otro sistema además del RDI de Guarani?- NO UNICAMENTE CON GUARANI.
  • Es posible que se hayan ejecutado comandos en el repositorio que hayan llevado al borrado de archivos? NO..
  • Es posible que en algún momento hayan borrado los temporales de preinscripcion/src/siu/www/temp? ESTO NO ESTOY SEGURO PUEDE SER QUE SI. AL MOMENTO DE MIGRAR DE VERSION TUVIMOS INCONVENIENTES DE ESPACIO EN DISCO Y PODRIA SER QUE ELIMINAMOS LOS TEMPORALES.

Saludos!

Hola Gerardo!

Gracias por la información!

Lo cierto es que es dificil detectar la causa del borrado de estos archivos.

Descartamos que sea un tema de que nunca se hayan cargado los archivos, ya que el proceso implica que el hash se graba en la tabla de guaraní recién una vez que el archivo ya se encuentra almacenado en el repositorio. Del mismo modo, si fuera este el caso debería de ser posible reproducirlo en un ambiente de prueba.

Lo que pensamos es que posiblemente estos archivos se hayan borrado a raíz de un antivirus o un Waf del servidor que los haya eliminado considerándolos archivos maliciosos, o bien por haberse borrado en algún momento los temporales de preinscripción.

Lo mejor es ir monitoreando el tema, ver si esto vuelve a ocurrir y tratar de detectar en qué momento es que desaparecen estos archivos para buscar la causa.
Algo que hablábamos con Daniela es que puede ser importante saber si los mismos se borraron antes o después de procesar la preinscripción, para ir delimitando el rango a analizar.

Saludos!

Buen día.

Desde nuestra uni indagamos logs, archivos del antivirus, y no podemos dar con ningun rastro de borrado. No teniamos la opcion de auditoria de Nuxeo como para saber cuando se borraron, por lo que no podemos aportar mayor información.

Lo que si, planificamos para el próximo período de preinscripción un seguimiento a los archivos que se van subiendo.

Y aportamos que esto sucedió cuando subieron desde preinscripción, no asi desde autogestión el año 2024.

Gracias Daniela por el aporte!!

@mmanzo en el caso de la UNVM tenían configurados la auditoría de nuxeo para poder rastrear el borrado de estos archivos?

Desde el SIU estuvimos analizando todo el proceso de preinscripción, inscripción y administración de requisitos pero no encontramos ningún motivo por el cuál se pueda llegar a borrar un archivo de nuxeo.
En la única parte donde se elimina un requisito del RDI es cuando se rechaza un borrador (draft) desde la operación Administrar Requisitos de una Persona, es el único lugar donde se llama a la función eliminar_documento de php/nucleo/_lib/cliente_rdi/guarani_cliente_rdi_nucleo.php desde Gestión.

Por eso nuestra principal hipótesis es que haya algún antivirus, plugin o waf que esté borrando archivos por considerarlos maliciosos. Pero la única forma de rastrear esto por lo que vimos es si se tienen configurados en nuxeo los logs para guardar registros de auditoría y ver allí en qué momento se borraron esos archivos. Pero sabemos que no es habitual tener habilitados estos registros.

Por lo que todo aporte de instituciones que hayan tenido esta situación nos es útil para poder seguir avanzando en el análisis.

Saludos!

Hola, no tenemos el log de Nuxeo activo ya que lo tenemos Dockerizado, pero hicimos algunas pruebas más con un requisito que da error y con otro del mismo tipo que no da error. Ambos se encuentran en la base de datos de Nuxeo y de Guaraní pero uno de ellos no se puede alcanzar. Nos da la impresión que no existe el documento del requisito físicamente en el servidor del RDI. Pero como indicamos antes, consultando la base de datos de Nuxeo el registro existe.

Requisito Foto pendiente de validar que existe en la base de datos de Nuxeo y de Guaraní pero aún asi da error al intentar visualizarlo.

Historial Nuxeo

Log Guaraní

[ERROR][guarani] Error recuperar contenido: No content stream: a604bba7-1720-400f-adbb-fbc4e078d29d
[ERROR][guarani] #0 /usr/local/proyectos/guarani/vendor/siu/rdi/RDILib/servicios/RDIServicioRecurso.php(184): RDIConectorCMIS->recuperarContenido()
#1 /usr/local/proyectos/guarani/php/nucleo/_lib/cliente_rdi/guarani_cliente_rdi_nucleo.php(123): RDIServicioRecurso->recuperarContenido()
#2 /usr/local/proyectos/guarani/php/nucleo/requisitos/requisitos_ingreso/requisitos_persona/cn_ent_requisito_de_persona.php(1164): guarani_cliente_rdi_nucleo::get_contenido_documento()

Consultando la URL: http://ipnuxeo:8080/nuxeo/nxfile/default/a604bba7-1720-400f-adbb-fbc4e078d29d

Devuelve este Documento XML:

document(1).xml.txt (2,7 KB)

Requisito Foto que NO da error (De otro Estudiante)

URL : http://ipnuxeo:8080/nuxeo/nxfile/default/003e61b0-a247-4fc7-b645-b40a3e73aae4

Resultado - Documento XML:

document(3).xml.txt (3,5 KB)

Espero que sea de utilidad estos aportes

Un saludo

Hola @mmanzo , gracias por la información !!!

Si prueban las siguientes URLS:

http://ipnuxeo:8080/nuxeo/nxfile/default/a604bba7-1720-400f-adbb-fbc4e078d29d/file:content

http://ipnuxeo:8080/nuxeo/nxfile/default/003e61b0-a247-4fc7-b645-b40a3e73aae4/file:content

¿te descarga los archivos?

Fíjate que en el primer archivo xml xmlns:file esta vacío, no tiene <file:content></file:content>:

Para http://ipnuxeo:8080/nuxeo/nxfile/default/a604bba7-1720-400f-adbb-fbc4e078d29d?inline=true veo:

  <schema xmlns:file="http://www.nuxeo.org/ecm/schemas/file/" name="file"></schema>
  <schema xmlns:common="http://www.nuxeo.org/ecm/schemas/common/" name="common"></schema>
  <schema xmlns:files="http://www.nuxeo.org/ecm/schemas/files/" name="files">
    <files:files/>
  </schema>

Para http://ipnuxeo:8080/nuxeo/nxfile/default/003e61b0-a247-4fc7-b645-b40a3e73aae4?inline=true veo:

  <schema xmlns:file="http://www.nuxeo.org/ecm/schemas/file/" name="file">
    <file:content>
      <encoding></encoding>
      <mime-type>image/jpeg</mime-type>
      <filename>foto-022000000</filename>
      <data>def4e4ac.blob</data>
      <digest>a4bc0c0683e36cd1c3ba3679792809cf</digest>
    </file:content>
  </schema>
  <schema xmlns:common="http://www.nuxeo.org/ecm/schemas/common/" name="common">
    <common:icon><![CDATA[/icons/image.gif]]></common:icon>
  </schema>
  <schema xmlns:files="http://www.nuxeo.org/ecm/schemas/files/" name="files">
    <files:files/>
  </schema>

El error ocurre porque, aunque el documento existe en la base de datos de Nuxeo, el objeto binario (el archivo físico) no está vinculado a él.

Nuxeo diferencia entre el DocumentModel (los metadatos que ves en el XML) y el Content Stream (los bytes del archivo). En tu fragmento de XML se confirma que el contenedor del archivo está vacío:

Saludos.

Para solucionar esto directamente desde la UI de Nuxeo (Web UI), lo que necesitas es “inyectar” el archivo binario en ese registro que actualmente solo tiene metadatos.

Sigue estos pasos para repararlo manualmente:

1. Localizar el documento

Como tienes el ID (a604bba7-1720-400f-adbb-fbc4e078d29d), la forma más rápida de encontrarlo en la interfaz es modificar la URL de tu navegador.

  • Si usas Nuxeo Web UI, la URL suele ser:
    http://ipnuxeo:8080/nuxeo/ui/#!/browse/default/doc/a604bba7-1720-400f-adbb-fbc4e078d29d
  • Una vez dentro, verás que los campos de “Nombre” y “Apellido” están llenos, pero probablemente verás un icono de archivo genérico o un mensaje de “No hay contenido”.

2. Cargar el archivo (Upload)

Dependiendo de la versión de tu interfaz, tienes dos caminos:

  • Botón de Edición: Haz clic en el icono del lápiz (Edit). Busca el apartado llamado “Contenido principal” o “Archivo”. Verás un selector para subir un archivo desde tu computadora. Selecciona la foto correspondiente y dale a Save.
  • Drag & Drop: En muchas versiones de la Web UI, puedes simplemente arrastrar el archivo de imagen desde tu escritorio y soltarlo directamente sobre el área central del documento abierto en el navegador.

3. Verificar los esquemas

Una vez que guardes los cambios:

  1. Refresca la URL original que me pasaste: http://ipnuxeo:8080/nuxeo/nxfile/default/a604bba7-1720-400f-adbb-fbc4e078d29d
  2. Ahora, en lugar de ver el XML, el navegador debería intentar descargar o mostrar la imagen.
  3. Si vuelves a ver el XML por alguna razón, busca la sección <schema name="file">. Ahora debería aparecer llena con etiquetas como <file:content>, <filename> y <mime-type>.

¿Por qué pasó esto? (Para evitarlo en el futuro)

Si estos documentos se crean automáticamente desde una aplicación externa (vía CMIS o REST API), el problema es que el código está haciendo un POST para crear el documento con los metadatos, pero no está enviando el Blob (el binario).

  • En CMIS: Asegúrate de que el objeto ContentStream no sea nulo al crear el documento.
  • En REST: Se deben hacer dos llamadas (una para subir el binario al batch manager y otra para crear el documento asociando ese ID de batch) o una sola llamada multipart.

Lo pedido es deuda….

En este caso nos devuelve

En este otro caso, descarga el archivo sin problema

Lo que confirma que en el primer caso el archivo no se subió correctamente al Nuxeo.

Entendemos, pero el software externo que esta realizando esa tarea, utilizando CMIS, es Guaraní. No es una app de nuestra institución que está manejando los archivos. Lo que intentamos detectar es por qué Guaraní suele tener esté comportamiento. Si es un problema aleatorio por error del navegador cliente o su red o una situación/excepción no controlada en G3.