- Timestamp:
- Sep 14, 2015, 10:33:17 AM (9 years ago)
- Branches:
- master
- Children:
- fc4d3bb
- Parents:
- 1489193
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
murachi/src/main/java/ve/gob/cenditel/murachi/MurachiRESTWS.java
r1489193 r5dcf8b7 1432 1432 PresignHash presignHash = new PresignHash(); 1433 1433 1434 String result = ""; 1435 if (presignPar == null) { 1436 logger.error("solicitud mal formada."); 1437 result = "\"error\":\"solicitud mal formada\""; 1438 return Response.status(400).entity(result).build(); 1439 } 1440 1434 1441 // obtener el id del archivo 1435 1442 String fileId = presignPar.getFileId(); 1443 if (fileId == null) { 1444 logger.debug("fileId == null"); 1445 logger.error("solicitud mal formada: no esta especificado el identificador del archivo PDF."); 1446 result = "\"error\":\"solicitud mal formada: : no esta especificado el identificador del archivo PDF\""; 1447 return Response.status(400).entity(result).build(); 1448 } 1449 logger.debug(" fileId: " + fileId); 1436 1450 1437 1451 // cadena con el certificado 1438 1452 String certHex = presignPar.getCertificate(); 1439 System.out.println("certificado en Hex: " + certHex); 1440 1453 if (certHex == null) { 1454 logger.debug("certHex == null"); 1455 logger.error("solicitud mal formada: no esta especificado el certificado del firmante en hexadecimal."); 1456 result = "\"error\":\"solicitud mal formada: : no esta especificado el certificado del firmante en hexadecimal.\""; 1457 return Response.status(400).entity(result).build(); 1458 } 1459 logger.debug(" certHex: " + certHex); 1460 1461 // razon de la firma 1441 1462 String reason = presignPar.getReason(); 1442 1463 if (reason == null) { 1464 logger.debug("certHex == null"); 1465 logger.error("solicitud mal formada: no esta especificada la razon de la firma."); 1466 result = "\"error\":\"solicitud mal formada: : no esta especificada la razon de la firma.\""; 1467 return Response.status(400).entity(result).build(); 1468 } 1469 logger.debug(" reason: " + reason); 1470 1471 // ubicacion de la firma 1443 1472 String location = presignPar.getLocation(); 1444 1473 if (location == null) { 1474 logger.debug("location == null"); 1475 logger.error("solicitud mal formada: no esta especificada la ubicación donde se realiza la firma."); 1476 result = "\"error\":\"solicitud mal formada: : no esta especificada la ubicación donde se realiza la firma.\""; 1477 return Response.status(400).entity(result).build(); 1478 } 1479 logger.debug(" location: " + location); 1480 1481 // contacto del firmante 1445 1482 String contact = presignPar.getContact(); 1446 1483 if (contact == null) { 1484 logger.debug("contact == null"); 1485 logger.error("solicitud mal formada: no esta especificada la informacion de contacto del firmante."); 1486 result = "\"error\":\"solicitud mal formada: : no esta especificada la informacion de contacto del firmante.\""; 1487 return Response.status(400).entity(result).build(); 1488 } 1489 logger.debug(" location: " + location); 1490 1491 // firma visible 1447 1492 Boolean signatureVisible = presignPar.getSignatureVisible(); 1493 if (signatureVisible == null) { 1494 logger.debug("signatureVisible == null"); 1495 logger.error("solicitud mal formada: no esta especificado si la firma PDF es visible o no."); 1496 result = "\"error\":\"solicitud mal formada: : no esta especificado si la firma PDF es visible o no.\""; 1497 return Response.status(400).entity(result).build(); 1498 } 1499 logger.debug(" signatureVisible: " + Boolean.toString(signatureVisible)); 1448 1500 1449 1501 … … 1461 1513 //result = presignHash.toString(); 1462 1514 logger.info("El archivo que desea firmar no es un PDF."); 1463 return Response.status(400).entity(presignHash).build(); 1464 1465 } 1466 1467 1515 return Response.status(400).entity(presignHash).build(); 1516 } 1517 1468 1518 try { 1469 1519 CertificateFactory factory = CertificateFactory.getInstance("X.509"); … … 1771 1821 1772 1822 logger.info("/pdfs/resenas"); 1823 1824 String result = ""; 1825 1826 if (postsignPar == null) { 1827 logger.error("solicitud mal formada."); 1828 result = "\"error\":\"solicitud mal formada\""; 1829 return Response.status(400).entity(result).build(); 1830 } 1831 1773 1832 // cadena con la firma 1774 1833 String signature = postsignPar.getSignature(); 1775 System.out.println("firma en Hex: " + signature); 1834 if (signature == null) { 1835 logger.debug("signature == null"); 1836 logger.error("solicitud mal formada: no esta especificada la firma realizada en el cliente."); 1837 result = "\"error\":\"solicitud mal formada: : no esta especificado el identificador del archivo PDF\""; 1838 return Response.status(400).entity(result).build(); 1839 } 1840 logger.debug(" signature: " + signature); 1776 1841 1777 1842 HttpSession session = req.getSession(false); … … 1794 1859 1795 1860 JSONObject jsonError = new JSONObject(); 1861 1862 if (fileId == null) { 1863 System.out.println("fileId == null"); 1864 logger.error("Error en completacion de firma: identificador de archivo nulo"); 1865 //throw new MurachiException("Error en completacion de firma: estructura PdfPKCS7 nula"); 1866 1867 jsonError.put("error", "identificador de archivo nulo"); 1868 return Response.status(500).entity(jsonError).build(); 1869 } 1870 1871 if (stamper == null) { 1872 System.out.println("stamper == null"); 1873 logger.error("Error en completacion de firma: estructura PdfStamper nula"); 1874 //throw new MurachiException("Error en completacion de firma: estructura PdfPKCS7 nula"); 1875 1876 jsonError.put("error", "estructura PdfStamper nula"); 1877 return Response.status(500).entity(jsonError).build(); 1878 } 1796 1879 1797 1880 if (sgn == null) { … … 2760 2843 String result = ""; 2761 2844 2762 System.out.println("uploadFilesToBDOC..."); 2763 2845 if (formParams == null) { 2846 logger.error("solicitud mal formada."); 2847 result = "\"error\":\"solicitud mal formada\""; 2848 return Response.status(400).entity(result).build(); 2849 } 2850 2764 2851 Security.addProvider(new BouncyCastleProvider()); 2765 2852 Container c = createBDOCContainer(); … … 2890 2977 // cadena con la respuesta 2891 2978 String result = ""; 2979 2892 2980 // ruta del contenedor serializado 2893 2981 String serializedContainerId = ""; 2894 2895 System.out.println("appendFilesToBDOC..."); 2982 2983 if (formParams == null) { 2984 logger.error("solicitud mal formada."); 2985 result = "\"error\":\"solicitud mal formada\""; 2986 return Response.status(400).entity(result).build(); 2987 } 2988 2989 if (containerId == null) { 2990 logger.error("solicitud mal formada."); 2991 result = "\"error\":\"solicitud mal formada no se especifico el identificador del contenedor.\""; 2992 return Response.status(400).entity(result).build(); 2993 } 2896 2994 2897 2995 System.out.println("containerId: "+ containerId); … … 3969 4067 public Response presignBDOCContainer(PresignParametersBdoc presignPar) throws MurachiException { 3970 4068 4069 String result = ""; 4070 3971 4071 logger.info("recurso /bdocs/firmas/pre"); 3972 4072 3973 4073 PresignHash presignHash = new PresignHash(); 3974 4074 logger.debug("presignPar: " + presignPar); 4075 4076 if (presignPar == null) { 4077 logger.error("solicitud mal formada."); 4078 result = "\"error\":\"solicitud mal formada\""; 4079 return Response.status(400).entity(result).build(); 4080 } 4081 3975 4082 // obtener el id del archivo a firmar 3976 String containerId = presignPar.getFileId(); 3977 4083 String containerId = presignPar.getFileId(); 4084 if (containerId == null) { 4085 logger.debug("containerId == null"); 4086 logger.error("solicitud mal formada: no esta especificado el identificador del contenedor."); 4087 result = "\"error\":\"solicitud mal formada: : no esta especificado el identificador del contenedor\""; 4088 return Response.status(400).entity(result).build(); 4089 } 4090 logger.debug(" containerId: " + containerId); 4091 3978 4092 // cadena con el certificado 3979 String certHex = presignPar.getCertificate(); 3980 System.out.println("certificado en Hex: " + certHex); 4093 String certHex = presignPar.getCertificate(); 4094 if (certHex == null) { 4095 logger.debug("certHex == null"); 4096 logger.error("solicitud mal formada: no esta especificado el certificado firmante en hexadecimal."); 4097 result = "\"error\":\"solicitud mal formada: : no esta especificado el certificado firmante en hexadecimal\""; 4098 return Response.status(400).entity(result).build(); 4099 } 4100 logger.debug(" certHex: " + certHex); 3981 4101 3982 4102 String city = presignPar.getCity(); 4103 if (city == null) { 4104 logger.debug("city == null"); 4105 logger.error("solicitud mal formada: no esta especificada la ciudad donde se realiza la firma."); 4106 result = "\"error\":\"solicitud mal formada: : no esta especificada la ciudad donde se realiza la firma\""; 4107 return Response.status(400).entity(result).build(); 4108 } 3983 4109 logger.debug(" city: " + city); 3984 4110 3985 4111 String state = presignPar.getState(); 4112 if (state == null) { 4113 logger.debug("state == null"); 4114 logger.error("solicitud mal formada: no esta especificado el estado donde se realiza la firma."); 4115 result = "\"error\":\"solicitud mal formada: : no esta especificado el estado donde se realiza la firma\""; 4116 return Response.status(400).entity(result).build(); 4117 } 3986 4118 logger.debug(" state: " + state); 3987 4119 3988 4120 String postalCode = presignPar.getPostalCode(); 4121 if (postalCode == null) { 4122 logger.debug("state == null"); 4123 logger.error("solicitud mal formada: no esta especificado el codigo postal donde se realiza la firma."); 4124 result = "\"error\":\"solicitud mal formada: : no esta especificado el codigo postal donde se realiza la firma\""; 4125 return Response.status(400).entity(result).build(); 4126 } 3989 4127 logger.debug(" postalCode: " + postalCode); 3990 4128 3991 4129 String country = presignPar.getCountry(); 4130 if (country == null) { 4131 logger.debug("country == null"); 4132 logger.error("solicitud mal formada: no esta especificado el pais donde se realiza la firma."); 4133 result = "\"error\":\"solicitud mal formada: : no esta especificado el pais donde se realiza la firma\""; 4134 return Response.status(400).entity(result).build(); 4135 } 3992 4136 logger.debug(" country: " + country); 3993 4137 3994 4138 String role = presignPar.getRole(); 4139 if (role == null) { 4140 logger.debug("role == null"); 4141 logger.error("solicitud mal formada: no esta especificado el rol del firmante."); 4142 result = "\"error\":\"solicitud mal formada: : no esta especificado el el rol del firmante\""; 4143 return Response.status(400).entity(result).build(); 4144 } 3995 4145 logger.debug(" role: " + role); 3996 4146 … … 4003 4153 // 4004 4154 String hashToSign = ""; 4005 4006 String result = "";4007 4155 4008 4156 SignedInfo signedInfo; … … 4236 4384 4237 4385 logger.info("recurso /bdocs/firmas/post"); 4238 4386 String result = ""; 4387 4388 if (postsignPar == null) { 4389 logger.error("solicitud mal formada."); 4390 result = "\"error\":\"solicitud mal formada\""; 4391 return Response.status(400).entity(result).build(); 4392 } 4393 4239 4394 // cadena con la firma 4240 4395 String signature = postsignPar.getSignature(); 4241 System.out.println("firma en Hex: " + signature); 4396 if (signature == null) { 4397 logger.debug("signature == null"); 4398 logger.error("solicitud mal formada: no esta especificada la firma realizada en el cliente."); 4399 result = "\"error\":\"solicitud mal formada: : no esta especificada la firma realizada en el cliente\""; 4400 return Response.status(400).entity(result).build(); 4401 } 4242 4402 logger.info("firma en Hex: " + signature); 4243 4403 4244 4404 // obtener el id del archivo a firmar 4245 4405 String containerId = postsignPar.getContainerId(); 4406 if (containerId == null) { 4407 logger.debug("containerId == null"); 4408 logger.error("solicitud mal formada: no esta especificado el identificador del contenedor."); 4409 result = "\"error\":\"solicitud mal formada: : no esta especificado el identificador del contenedor\""; 4410 return Response.status(400).entity(result).build(); 4411 } 4246 4412 4247 4413 String signedBdoc = containerId + ".bdoc"; … … 4257 4423 if (!f.exists()) { 4258 4424 logger.error("el contenedor "+ serializedContainerId + " no existe."); 4259 Stringresult = "\"error\":\"el contenedor "+ serializedContainerId + " no existe\"";4425 result = "\"error\":\"el contenedor "+ serializedContainerId + " no existe\""; 4260 4426 return Response.status(404).entity(result).build(); 4261 4427 }
Note: See TracChangeset
for help on using the changeset viewer.