Hay veces que, durante el proceso de firma de documentos electrónicos usando Autofirma, nos encontramos con el error SAF_26: error en la comunicación con el servicio de firma de lotes. ¿Es este error achacable al usuario o la infraestructura de firma del organismo donde el usuario intenta firmar? Veámoslo.
Si examinamos el código de autofirma, encontramos que el error SAF_26 se genera dentro de ProtocolInvocationLauncherBatch.java:
String batchResult; try { batchResult = BatchSigner.sign( Base64.encode(options.getData(), true), options.getBatchPresignerUrl(), options.getBatchPostSignerUrl(), pke.getCertificateChain(), pke.getPrivateKey() ); } catch(final HttpError e) { if (e.getResponseCode() / 100 == 4) { LOGGER.severe("Error en la comunicacion con el servicio de firma de lotes. StatusCode: " + //$NON-NLS-1$ e.getResponseCode() + ". Descripcion: " + e.getResponseDescription()); //$NON-NLS-1$ } else { LOGGER.severe("Error en el servicio de firma de lotes. StatusCode: " + //$NON-NLS-1$ e.getResponseCode() + ". Descripcion: " + e.getResponseDescription()); //$NON-NLS-1$ } final String errorCode = ProtocolInvocationLauncherErrorManager.ERROR_CONTACT_BATCH_SERVICE; ProtocolInvocationLauncherErrorManager.showError(errorCode); if (!bySocket){ throw new SocketOperationException(errorCode); } return ProtocolInvocationLauncherErrorManager.getErrorMessage(errorCode); }
en aquellos casos en los que el servidor trifásico devuelve un error. Es decir, cuando el servicio de firma intermedio, desplegado por la organización, ha tenido algún problema. Ahora bien, como usuarios que “únicamente” pretendemos firmar, ¿podemos hacer algo? La verdad es que no mucho, sólo dos cosas:
- buscar la información que Autofirma ha generado en su fichero de registro, ubicado en “\%HOMEPATH%\.afirma\AUTOFIRMA.afirma.log.xml” (si estás en Windows).
- Localizar la información de contacto de la organización, donde se esté intentando firmar, y escribirles un email donde adjuntéis el fichero del paso anterior.
Hay veces que los errores que se generan en alguna página web dejan descolocado al usuario. Espero que esto ayude a alguno a saber qué hacer.
Hola, gracias por toda la información que ofreces ¿Sabes si hay algún documento que describa la estructura del fichero XML de configuración de la operación cuando se firma por lotes (autofirmacommandline batchsign -i (xml configuracion)?
Hola Emilio,
supongo Autofirma, en su ejecución en línea de comandos, siga los mismos argumentos que en web (que seguro que sí). En ese caso, en el manual «Manual-Integrador-v1-6-5.pdf», que tienes en el PAE [ https://administracionelectronica.gob.es/ctt/resources/Soluciones/138/Descargas/Manual-Integrador-v1-6-5.pdf?idIniciativa=138&idElemento=11456 ], puedes ver en el apartado «6.7.2 Creación de los lotes» la definición del documento XML por el que preguntas.
Espero que te valga.
Estoy trabajando para poder firmar pdfs en un web, para esto estoy usando el Autoscript.
Ahora hay algo mas que hay que poner ?.
He visto que hay una constante URL_BASE_SERVICES : «http://192.168.1.104»
Dice n la documentacion que se coloque la IP de la maquina cuando estemos en localhost haciendo pruebas, pero a QUe apunta, ????
Hay un java?? si lo hay de donde se descarga ??.
Muchas Gracias. Jorge.
Hola, necesito ayuda. Estoy intentando renovar el certificado digital, usando un MAC y cuando hago la solicitud (uso Chrome), se ejecuta CERES e introduzco todos los datos y al firmar se ejecuta Autofirma y me da el Error: SAF_08: Error accediendo al almacén de claves y certificados.
¿Qué puedo hacer?, Muchas gracias por todo.
Un saludo.