Commit 461fff69 authored by jcca's avatar jcca
Browse files

Merge branch 'Desarrollo' into 'master'

Desarrollo

See merge request !1
parents d68a3789 6a0ea099
......@@ -92,7 +92,7 @@ public class UtilidadClaves {
token.salir();
JSONObject dato = new JSONObject();
dato.put("llave", new JSONObject(clave.toString()));
dato.put("clave", new JSONObject(clave.toString()));
jsonRespuesta.setMensaje("Detalle de Par de Claves");
jsonRespuesta.setDatos(dato.toString());
......@@ -167,7 +167,7 @@ public class UtilidadClaves {
token.salir();
JSONObject dato = new JSONObject();
dato.put("llave", mclave.toString());
dato.put("clave", mclave.toString());
jsonRespuesta.setMensaje("Claves generadas");
jsonRespuesta.setDatos(dato.toString());
......
......@@ -84,7 +84,7 @@ public class UtilidadFirmador {
//firmo el documento archivo
Firmador firmar = Firmador.getInstance();
archivo = firmar.firmar(archivo, priv, banderas, cert);
archivo = firmar.firmar(archivo, priv, banderas,token.nombreProveedor(), cert);
//transformo el archivo firmado (arreglo de bytes) en base64
String archivoBase64 = Base64.getEncoder().encodeToString(archivo);
......@@ -162,6 +162,11 @@ public class UtilidadFirmador {
} else {
jsonDetalle.put("revocado", "si");
}
if (verifica.verificar(cert)) {
jsonDetalle.put("ocsp", "si");
} else {
jsonDetalle.put("ocsp", "no");
}
detalle.put(jsonDetalle);
}
dato.put("firmas", detalle);
......
......@@ -42,7 +42,6 @@ public class Run {
} else {
System.exit(0);
}
}
/**
......@@ -60,5 +59,4 @@ public class Run {
String[] librerias = prop.getProperty("proveedores").split(";");
return librerias;
}
}
......@@ -64,7 +64,7 @@ public class FirmadorRestServicioTest {
pdffirmado = Base64.getDecoder().decode(json.getString("fichero"));
pdfbase64 = Base64.getEncoder().encodeToString(pdffirmado);
}
verificarPDF(pdffirmado);
verificarPDF(pdffirmado,3);
}
/**
......@@ -72,7 +72,7 @@ public class FirmadorRestServicioTest {
* @param pdffirmado
* @throws Exception
*/
public void verificarPDF(byte[] pdffirmado) throws Exception {
public void verificarPDF(byte[] pdffirmado, int nroFirmas) throws Exception {
//recupero un pdf firmador y lo codifico en base64
String pdfbase64 = Base64.getEncoder().encodeToString(pdffirmado);
//construyo en json de consumo para el servicio
......@@ -98,7 +98,7 @@ public class FirmadorRestServicioTest {
JSONArray firmas = (JSONArray) jsonVerificar.get("firmas");
System.out.println(firmas.length());
//pregunto si las firmas son 3
Assert.assertTrue(firmas.length() == 3);
Assert.assertTrue(firmas.length() == nroFirmas);
}
/**
......@@ -177,4 +177,45 @@ public class FirmadorRestServicioTest {
//verifico si hay 1 firma en el xml
Assert.assertTrue(firmas.length() == 1);
}
/**
*
* @throws Exception
*/
@Test
public void firmarPDFgrande() throws Exception {
//preparo un pdf vacio para firmar
byte[] pdf = Util.pdfVacio();
byte[] pdffirmado = Util.pdfVacio();
String pdfbase64 = Base64.getEncoder().encodeToString(pdf);
//preparo el mensaje de consumo para llamar al servicio firmar
JSONObject jsonDatos = new JSONObject();
jsonDatos.put("nombre", "doc.pdf");
jsonDatos.put("banderas", Banderas.TIPO_PDF|Banderas.FORMA_FIRMA_ARCHIVO_LARGO);
jsonDatos.put("fichero", pdfbase64);
System.out.println(jsonDatos.toString());
//llamo al servicio firmar
this.client = Util.getCliente("ssl");
String respuesta = client.target(REST_SERVICE_URL_SSL)
.path("/{slotId}")
.resolveTemplate("slotId", Util.SLOT_ID)
.path("/{clavesId}")
.resolveTemplate("clavesId", Util.CLAVES_ID)
.request(MediaType.APPLICATION_JSON)
.header("Authorization", Util.PIN)
.post(Entity.entity(jsonDatos.toString(), MediaType.APPLICATION_JSON), String.class);
client.close();
//imprimo en consola la respuesta del servicio firmar
System.out.println("firmando--> " + respuesta);
//recupero el archivo firmado
Respuesta resultado = new Respuesta(new JSONObject(respuesta));
Assert.assertTrue(resultado.getCodigo() < Util.ERROR_INICIO || resultado.getCodigo() > Util.ERROR_FIN);
JSONObject json = new JSONObject(resultado.getDatos());
pdffirmado = Base64.getDecoder().decode(json.getString("fichero"));
//pdfbase64 = Base64.getEncoder().encodeToString(pdffirmado);
verificarPDF(pdffirmado,1);
}
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment