FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Problemas con el envio TicketBAI para Bizkaia
Buenas,
Tengo solucionado el tema del TicketBAI para Guipuzkoa y Alava, ahora estoy enfocado en el envió de TicketBAI para Bizkaia. Asi pues, genero el TicketBAI tal y como haria en Gipuzkoa o Alava, convierto el documento en Base64, creo el XML con el TicketBAI codificado en Base64 en su interior y lo comprimo con GZIP. Una vez con el GZIP, creo la peticion que contendra este GZIP en su cuerpo. El problema lo tengo al enviar y recibir la respuesta, asi pues me esta dando "404 - Bad Request". Os dejo mi codigo en Java, para que podais ver lo que estoy haciendo para crear la peticion, tengo el certificado de Bizkaia en mi JKS y estoy enviando con SSL usando un certificado (.pfx): Código:
String jsonHeader = "{\"con\": \"LROE\",\"apa\": \"1.1\",\"inte\": {\"nif\": \"" + nif + "\",\"nrs\": \"" + nrs + "\"},\"drs\": {\"mode\": \"240\",\"ejer\": \"" + ejer + "\"}}"; System.out.println("eus-bizkaia-n3-data -> " + jsonHeader); con.setRequestProperty("Accept-Encoding", "gzip"); con.setRequestProperty("Content-Encoding", "gzip"); con.setRequestProperty("Content-Length ",String.valueOf(comprimitBizkaia.length())); con.setRequestProperty("Content-Type", "application/octet-stream"); con.setRequestProperty("eus-bizkaia-n3-version", "1.0"); con.setRequestProperty("eus-bizkaia-n3-content-type", "application/xml"); con.setRequestProperty("eus-bizkaia-n3-data", jsonHeader); con.setRequestProperty("Method", "POST"); OutputStream os = con.getOutputStream(); os.write(Files.readAllBytes(comprimitBizkaia.toPath())); os.flush(); con.connect(); //Rebre resposta servidor de Bizkaia StringBuilder sb = new StringBuilder(); int HttpResult = con.getResponseCode(); if(HttpResult == HttpsURLConnection.HTTP_OK){ InputStream gzipStream = new GZIPInputStream(con.getInputStream()); Reader decoder = new InputStreamReader(gzipStream, "utf-8"); BufferedReader buffered = new BufferedReader(decoder); String line = null; while ((line = buffered.readLine()) != null) { sb.append(line + "\n"); } buffered.close(); sResposta = sb.toString(); System.out.println("Resposta -> "+sb.toString()); }else{ System.out.println(con.getResponseCode()); System.out.println(con.getResponseMessage()); } }catch (IOException | KeyStoreException | NoSuchAlgorithmException | KeyManagementException | CertificateException | UnrecoverableKeyException e) { //}catch (IOException e) { System.err.println("HA DADO UNA EXCEPCION"); System.err.println(e); } |
#2
|
||||
|
||||
Cita:
Un Saludo. |
#3
|
|||
|
|||
Cita:
A lo que te refieres es al XML que contiene el TicketBAI codificado a Base64, asi es XML que tengo dentro de mi GZIP que envio a la diputacion de Bizkaia. Código:
<?xml version="1.0" encoding="UTF-8" standalone="no"?><lrpjfecsgap:LROEPJ240FacturasEmitidasConSGAltaPeticion xmlns:lrpjfecsgap="Aqui hay un link y no lo puedo poner"> <Cabecera> <Modelo>240</Modelo> <Capitulo>1</Capitulo> <Subcapitulo>1.1</Subcapitulo> <Operacion>A00</Operacion> <Version>1.0</Version> <Ejercicio>2021</Ejercicio> <ObligadoTributario> <NIF>B17845116</NIF> <ApellidosNombreRazonSocial>CCALGIR, S.L.</ApellidosNombreRazonSocial> </ObligadoTributario> </Cabecera> <FacturasEmitidas> <FacturaEmitida> <TicketBai>PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiIHN0YW5kYWxvbmU9Im5vIj8+PFQ6VGlja2V0QmFpIHhtbG5zOlQ9InVybjp0aWNrZXRiYWk6ZW1pc2lvbiIgeG1sbnM6ZHM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvMDkveG1sZHNpZyMiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhzaTpzY2hlbWFMb2NhdGlvbj0idXJuOnRpY2tldGJhaTplbWlzaW9uIHRpY2tldEJhaVYxMi54c2QiPjxDYWJlY2VyYT48SURWZXJzaW9uVEJBST4xLjI8L0lEVmVyc2lvblRCQUk+PC9DYWJlY2VyYT48U3VqZXRvcz48RW1pc29yPjxOSUY+QjE3ODQ1MTE2PC9OSUY+PEFwZWxsaWRvc05vbWJyZVJhem9uU29jaWFsPkNDQUxHSVIsIFMuTC48L0FwZWxsaWRvc05vbWJyZVJhem9uU29jaWFsPjwvRW1pc29yPjxEZXN0aW5hdGFyaW9zPjxJRERlc3RpbmF0YXJpbz48TklGPkIxNzg0NTExNjwvTklGPjxBcGVsbGlkb3NOb21icmVSYXpvblNvY2lhbD5DQ0FMR0lSPC9BcGVsbGlkb3NOb21icmVSYXpvblNvY2lhbD48Q29kaWdvUG9zdGFsLz48RGlyZWNjaW9uPkF2LiBTYW50IEZyYW5jZXNjLCAxMzwvRGlyZWNjaW9uPjwvSUREZXN0aW5hdGFyaW8+PC9EZXN0aW5hdGFyaW9zPjwvU3VqZXRvcz48RmFjdHVyYT48Q2FiZWNlcmFGYWN0dXJhPjxTZXJpZUZhY3R1cmE+TVVTRVUuMTwvU2VyaWVGYWN0dXJhPjxOdW1GYWN0dXJhPjEzNjwvTnVtRmFjdHVyYT48RmVjaGFFeHBlZGljaW9uRmFjdHVyYT4yNS0wMy0yMDIxPC9GZWNoYUV4cGVkaWNpb25GYWN0dXJhPjxIb3JhRXhwZWRpY2lvbkZhY3R1cmE+MTY6MjQ6MTU8L0hvcmFFeHBlZGljaW9uRmFjdHVyYT48RmFjdHVyYVNpbXBsaWZpY2FkYT5OPC9GYWN0dXJhU2ltcGxpZmljYWRhPjxGYWN0dXJhRW1pdGlkYVN1c3RpdHVjaW9uU2ltcGxpZmljYWRhPk48L0ZhY3R1cmFFbWl0aWRhU3VzdGl0dWNpb25TaW1wbGlmaWNhZGE+PC9DYWJlY2VyYUZhY3R1cmE+PERhdG9zRmFjdHVyYT48RGVzY3JpcGNpb25GYWN0dXJhPkZhY3R1cmVzIFRpY2tldEJBSSBnZW5lcmVhZGVzPC9EZXNjcmlwY2lvbkZhY3R1cmE+PERldGFsbGVzRmFjdHVyYT48SUREZXRhbGxlRmFjdHVyYT48RGVzY3JpcGNpb25EZXRhbGxlPlZpc2l0YSBNdXNldTwvRGVzY3JpcGNpb25EZXRhbGxlPjxDYW50aWRhZD4xPC9DYW50aWRhZD48SW1wb3J0ZVVuaXRhcmlvPjA8L0ltcG9ydGVVbml0YXJpbz48SW1wb3J0ZVRvdGFsPjguMDA8L0ltcG9ydGVUb3RhbD48L0lERGV0YWxsZUZhY3R1cmE+PC9EZXRhbGxlc0ZhY3R1cmE+PEltcG9ydGVUb3RhbEZhY3R1cmE+OC4wMDwvSW1wb3J0ZVRvdGFsRmFjdHVyYT48Q2xhdmVzPjxJRENsYXZlPjxDbGF2ZVJlZ2ltZW5JdmFPcFRyYXNjZW5kZW5jaWE+MDE8L0NsYXZlUmVnaW1lbkl2YU9wVHJhc2NlbmRlbmNpYT48L0lEQ2xhdmU+PC9DbGF2ZXM+PC9EYXRvc0ZhY3R1cmE+PFRpcG9EZXNnbG9zZT48RGVzZ2xvc2VGYWN0dXJhPjxTdWpldGE+PE5vRXhlbnRhPjxEZXRhbGxlTm9FeGVudGE+PFRpcG9Ob0V4ZW50YT5TMTwvVGlwb05vRXhlbnRhPjxEZXNnbG9zZUlWQT48RGV0YWxsZUlWQT48QmFzZUltcG9uaWJsZT42LjYxPC9CYXNlSW1wb25pYmxlPjxUaXBvSW1wb3NpdGl2bz4yMTwvVGlwb0ltcG9zaXRpdm8+PEN1b3RhSW1wdWVzdG8+MS4zOTwvQ3VvdGFJbXB1ZXN0bz48L0RldGFsbGVJVkE+PC9EZXNnbG9zZUlWQT48L0RldGFsbGVOb0V4ZW50YT48L05vRXhlbnRhPjwvU3VqZXRhPjwvRGVzZ2xvc2VGYWN0dXJhPjwvVGlwb0Rlc2dsb3NlPjwvRmFjdHVyYT48SHVlbGxhVEJBST48RW5jYWRlbmFtaWVudG9GYWN0dXJhQW50ZXJpb3I+PFNlcmllRmFjdHVyYUFudGVyaW9yPk1VU0VVLk1VU0VVLjE8L1NlcmllRmFjdHVyYUFudGVyaW9yPjxOdW1GYWN0dXJhQW50ZXJpb3I+MTM2PC9OdW1GYWN0dXJhQW50ZXJpb3I+PEZlY2hhRXhwZWRpY2lvbkZhY3R1cmFBbnRlcmlvcj4yNS0wMy0yMDIxPC9GZWNoYUV4cGVkaWNpb25GYWN0dXJhQW50ZXJpb3I+PFNpZ25hdHVyZVZhbHVlRmlybWFGYWN0dXJhQW50ZXJpb3I+ZDFtNFozbHhIY0hZUkM3RFg1MlArTzI2RlMweEh6VmV2b1dqM2VheUF5QzZlQklpc1U1bEZvSlc1aHdVV1ljUVFvNE5VYVRZeXRTKy90M3NsWTFtQmNXSE41KzRhSUoyM25nZzwvU2lnbmF0dXJlVmFsdWVGaXJtYUZhY3R1cmFBbnRlcmlvcj48L0VuY2FkZW5hbWllbnRvRmFjdHVyYUFudGVyaW9yPjxTb2Z0d2FyZT48TGljZW5jaWFUQkFJPlRCQUlHSVBSRTAwMDAwMDAwMDA5PC9MaWNlbmNpYVRCQUk+PEVudGlkYWREZXNhcnJvbGxhZG9yYT48TklGPkE0ODExOTgyMDwvTklGPjwvRW50aWRhZERlc2Fycm9sbGFkb3JhPjxOb21icmU+REZCVEJBSTwvTm9tYnJlPjxWZXJzaW9uPjEuMDQuMDA8L1ZlcnNpb24+PC9Tb2Z0d2FyZT48L0h1ZWxsYVRCQUk+PGRzOlNpZ25hdHVyZSBJZD0iU2lnbmF0dXJlLTEzNzU3NTgwMTgiPg0KCQk8ZHM6U2lnbmVkSW5mbz4NCgkJCTxkczpDYW5vbmljYWxpemF0aW9uTWV0aG9kIEFsZ29yaXRobT0iaHR0cDovL3d3dy53My5vcmcvVFIvMjAwMS9SRUMteG1sLWMxNG4tMjAwMTAzMTUiLz4NCgkJCTxkczpTaWduYXR1cmVNZXRob2QgQWxnb3JpdGhtPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxLzA0L3htbGRzaWctbW9yZSNyc2Etc2hhMjU2Ii8+DQoJCQk8ZHM6UmVmZXJlbmNlIFVSST0iIj4NCgkJCQk8ZHM6VHJhbnNmb3Jtcz4NCgkJCQkJPGRzOlRyYW5zZm9ybSBBbGdvcml0aG09Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvMDkveG1sZHNpZyNlbnZlbG9wZWQtc2lnbmF0dXJlIi8+DQoJCQkJPC9kczpUcmFuc2Zvcm1zPg0KCQkJCTxkczpEaWdlc3RNZXRob2QgQWxnb3JpdGhtPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxLzA0L3htbGVuYyNzaGEyNTYiLz4NCgkJCQk8ZHM6RGlnZXN0VmFsdWU+TldDT2pGT296dFlnaTJYVGs0OS92b2l5NUc5SVFvNFU2eVZJZVRJc05ZMD08L2RzOkRpZ2VzdFZhbHVlPg0KCQkJPC9kczpSZWZlcmVuY2U+DQoJCQk8ZHM6UmVmZXJlbmNlIFR5cGU9Imh0dHA6Ly91cmkuZXRzaS5vcmcvMDE5MDMjU2lnbmVkUHJvcGVydGllcyIgVVJJPSIjU2lnbmVkUHJvcGVydGllcy0yNjE3Mjc5MyI+DQoJCQkJPGRzOlRyYW5zZm9ybXM+DQoJCQkJCTxkczpUcmFuc2Zvcm0gQWxnb3JpdGhtPSJodHRwOi8vd3d3LnczLm9yZy9UUi8yMDAxL1JFQy14bWwtYzE0bi0yMDAxMDMxNSIvPg0KCQkJCTwvZHM6VHJhbnNmb3Jtcz4NCgkJCQk8ZHM6RGlnZXN0TWV0aG9kIEFsZ29yaXRobT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS8wNC94bWxlbmMjc2hhMjU2Ii8+DQoJCQkJPGRzOkRpZ2VzdFZhbHVlPktmTkhvRFlDVkVFM2hJM1NXUi9EdHROZ2JHNXVVcUtiMEhCc3o1ZVh4eUE9PC9kczpEaWdlc3RWYWx1ZT4NCgkJCTwvZHM6UmVmZXJlbmNlPg0KCQk8L2RzOlNpZ25lZEluZm8+DQoJCTxkczpTaWduYXR1cmVWYWx1ZT4NCgkJCVJydzNRWHpERWdHYjRJY1NndHdJKzN0NHhtY1RObTYwZ2JRYm8rdmFkN1dqc3BoSGRscSt1K2dHclRKUWNNWnANCgkJCUt6eUhJVWROQTFpYzVpclljN0RHeXJhTG5SYUtyRWtERzBibGVSZVViTDl5dHhDWUgrZ2NOeEhFc3lyVU91OWwNCgkJCVM3MWtqc21kbTZCaW5IYUNzUFZhSk9ISHhFcEs3UzhvTU5pM1dHQVFSTjFNTVFBamZkS3NyTG9waWtZMnlaY1MNCgkJCUo1VjhjaWliUXBuQ0R1Sjl6bHA2cnd4QnMxR1ZtUEFINHg4VWhKKzVmMnVFMWFLT0l5K01HS2UrUjlQcjFJZFcNCgkJCUptNUMxRE80VXVTcXVNRnVQNndua3JUclRrR2g4T3hhNmVpVWxUNUNOYWZUQXVCQnJaY0VTZnRUdVZwVlRnMmkNCgkJCU1vRlYyL1pqdWdreVd6OU5BTkxzdmc9PQ0KCQk8L2RzOlNpZ25hdHVyZVZhbHVlPg0KCQk8ZHM6S2V5SW5mbz4NCgkJCTxkczpYNTA5RGF0YT4NCgkJCQk8ZHM6WDUwOUlzc3VlclNlcmlhbD4NCgkJCQkJPGRzOlg1MDlJc3N1ZXJOYW1lPkNOPUFDIFJlcHJlc2VudGFjafNuLCBPVT1DRVJFUywgTz1GTk1ULVJDTSwgQz1FUzwvZHM6WDUwOUlzc3Vlck5hbWU+DQoJCQkJCTxkczpYNTA5U2VyaWFsTnVtYmVyPjk5NTIwNjA4Mzc1MzUxODU1Nzg0NjU0NDY2NDI0NTI2NzYwMTc2PC9kczpYNTA5U2VyaWFsTnVtYmVyPg0KCQkJCTwvZHM6WDUwOUlzc3VlclNlcmlhbD4NCgkJCQk8ZHM6WDUwOVN1YmplY3ROYW1lPkM9RVMsIE89Q0NBTEdJUiBTTCwgMi41LjQuOTc9IzBDMEY1NjQxNTQ0NTUzMkQ0MjMxMzczODM0MzUzMTMxMzYsIENOPTQwMzEyMDM5UCBKT1JESSBGRVJSRVIgKFI6IEIxNzg0NTExNiksIDIuNS40LjQ9IzBDMEM0NjQ1NTI1MjQ1NTIyMDQ0NTU1MjQxNEUsIDIuNS40LjQyPSMwQzA1NEE0RjUyNDQ0OSwgMi41LjQuNT0jMTMwRjQ5NDQ0MzQ1NTMyRDM0MzAzMzMxMzIzMDMzMzk1MCwgMi41LjQuMTM9IzBDNTA1MjY1NjczQTMxMzczMDMxMzAyMDJGNDg2RjZBNjEzQTQ3NDkyRDMzMzczOTMzMzEyMDJGNTQ2RjZENkYzQTMyMzIzNjM5MjAyRjQ2NkY2QzY5NkYzQTMxMzQzMDIwMkY0NjY1NjM2ODYxM0EzMTMxMkYzMDM1MkYzMjMwMzEzNTIwMkY0OTZFNzM2MzcyNjk3MDYzNjlDM0IzNkUzQTMzPC9kczpYNTA5U3ViamVjdE5hbWU+DQoJCQkJPGRzOlg1MDlDZXJ0aWZpY2F0ZT4NCgkJCQkJTUlJSXFUQ0NCNUdnQXdJQkFnSVFTdDc0MDJERmhrRmRnMWFwb1BabzhEQU5CZ2txaGtpRzl3MEJBUXNGQURCTg0KCQkJCQlNUXN3Q1FZRFZRUUdFd0pGVXpFUk1BOEdBMVVFQ2d3SVJrNU5WQzFTUTAweERqQU1CZ05WQkFzTUJVTkZVa1ZUDQoJCQkJCU1Sc3dHUVlEVlFRRERCSkJReUJTWlhCeVpYTmxiblJoWTJuRHMyNHdIaGNOTVRrd09URTVNVEF5TVRJNVdoY04NCgkJCQkJTWpFd09URTVNVEF5TVRJNVdqQ0NBUWd4V1RCWEJnTlZCQTBNVUZKbFp6b3hOekF4TUNBdlNHOXFZVHBIU1Mweg0KCQkJCQlOemt6TVNBdlZHOXRiem95TWpZNUlDOUdiMnhwYnpveE5EQWdMMFpsWTJoaE9qRXhMekExTHpJd01UVWdMMGx1DQoJCQkJCWMyTnlhWEJqYWNPemJqb3pNUmd3RmdZRFZRUUZFdzlKUkVORlV5MDBNRE14TWpBek9WQXhEakFNQmdOVkJDb00NCgkJCQkJQlVwUFVrUkpNUlV3RXdZRFZRUUVEQXhHUlZKU1JWSWdSRlZTUVU0eExqQXNCZ05WQkFNTUpUUXdNekV5TURNNQ0KCQkJCQlVQ0JLVDFKRVNTQkdSVkpTUlZJZ0tGSTZJRUl4TnpnME5URXhOaWt4R0RBV0JnTlZCR0VNRDFaQlZFVlRMVUl4DQoJCQkJCU56ZzBOVEV4TmpFVE1CRUdBMVVFQ2d3S1EwTkJURWRKVWlCVFRERUxNQWtHQTFVRUJoTUNSVk13Z2dFaU1BMEcNCgkJCQkJQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUUN1ZkYwR2Uyb0FTRWR4SDgycFNFUlh6aEVseWF0VQ0KCQkJCQl4VkxuVjBOQmdOY04vT2YzanovZ25aam1lQ2NjZ25PTnlwbXp2UnZZSkdRd2tlcUorZHcwazJjUUpVSDIra2FPDQoJCQkJCVM5Yk1LSS95TVFMTFc0clJjeVlVcWpiNUcrZWNBdjZHbUt4T0RQY2dEcFI1TERNQXppYUNHeUtTS1dZL2JrajMNCgkJCQkJakZId3pvWW56dDRMZlluNXdvMEhpWnlrUWtrNW8rcVNDUkE1NHQzVzVvd0FtOU5aMDdjcFY0VjJxM2VaamRvMA0KCQkJCQk3RmRwUHoybUVHQnpZZWRxQjVpZjR4UGFueS9VQzR4OStGbmp0NjdwcTB3YWpoR0w4UnMveWdLUXBTalg0NVRQDQoJCQkJCXJWTHpCRlZGakNqTUo2bkxhVXVxancvKzczKzJuL1NXSnRRUGEvMUs1THhGODF1d0t1L1Q0RU81QWdNQkFBR2oNCgkJCQkJZ2dUR01JSUV3akNCN3dZRFZSMFJCSUhuTUlIa2dSbEpRbFZTVWtWTVRFQlNTVUpCVTBGTVZrRlNSVm91UTBGVQ0KCQkJCQlwSUhHTUlIRE1TTXdJUVlKS3dZQkJBR3NaZ0VVREJSQlpHMXBibWx6ZEhKaFpHOXlJTU82Ym1samJ6RWVNQndHDQoJCQkJCUNTc0dBUVFCckdZQkJ3d1BWa0ZVUlZNdFFqRTNPRFExTVRFMk1Sa3dGd1lKS3dZQkJBR3NaZ0VHREFwRFEwRk0NCgkJCQkJUjBsU0lGTk1NUjR3SEFZSkt3WUJCQUdzWmdFRURBOUpSRU5GVXkwME1ETXhNakF6T1ZBeEZEQVNCZ2tyQmdFRQ0KCQkJCQlBYXhtQVFNTUJVUlZVa0ZPTVJVd0V3WUpLd1lCQkFHc1pnRUNEQVpHUlZKU1JWSXhGREFTQmdrckJnRUVBYXhtDQoJCQkJCUFRRU1CVXBQVWtSSk1Bd0dBMVVkRXdFQi93UUNNQUF3RGdZRFZSMFBBUUgvQkFRREFnWGdNQjBHQTFVZEpRUVcNCgkJCQkJTUJRR0NDc0dBUVVGQndNQ0JnZ3JCZ0VGQlFjREJEQ0JnZ1lJS3dZQkJRVUhBUUVFZGpCME1EMEdDQ3NHQVFVRg0KCQkJCQlCekFCaGpGb2RIUndPaTh2YjJOemNISmxjQzVqWlhKMExtWnViWFF1WlhNdmIyTnpjSEpsY0M5UFkzTndVbVZ6DQoJCQkJCWNHOXVaR1Z5TURNR0NDc0dBUVVGQnpBQ2hpZG9kSFJ3T2k4dmQzZDNMbU5sY25RdVptNXRkQzVsY3k5alpYSjANCgkJCQkJY3k5QlExSkZVQzVqY25Rd0hRWURWUjBPQkJZRUZJMnRyOExxZExtQXJFN2xHcnY0U1NDSnd1NlFNSUlCUHdZRA0KCQkJCQlWUjBnQklJQk5qQ0NBVEl3Z2dFWUJnb3JCZ0VFQWF4bUF3c0JNSUlCQ0RBcEJnZ3JCZ0VGQlFjQ0FSWWRhSFIwDQoJCQkJCWNEb3ZMM2QzZHk1alpYSjBMbVp1YlhRdVpYTXZaSEJqY3k4d2dkb0dDQ3NHQVFVRkJ3SUNNSUhORElIS1EyVnkNCgkJCQkJZEdsbWFXTmhaRzhnWTNWaGJHbG1hV05oWkc4Z1pHVWdjbVZ3Y21WelpXNTBZVzUwWlNCa1pTQndMaUJxZFhMRA0KCQkJCQlyV1JwWTJFZ0tISmxiR0ZqYWNPemJpQmpiMjRnUVVGUVVDQjVJR052Ym5SeVlYUmhZMm5EczI0cExpQlRkV3BsDQoJCQkJCWRHOGdZU0JqYjI1a2FXTnBiMjVsY3lCa1pTQjFjMjhnYzJWbnc3cHVJRVJRUXlCa1pTQkdUazFVTFZKRFRTd2cNCgkJCQkJVGtsR09pQlJNamd5TmpBd05DMUtJQ2hETDBwdmNtZGxJRXAxWVc0Z01UQTJMVEk0TURBNUxVMWhaSEpwWkMxRg0KCQkJCQljM0JodzdGaEtUQUpCZ2NFQUl2c1FBRUFNQWtHQjJDRlZBRURCUWd3Z2FZR0NDc0dBUVVGQndFREJJR1pNSUdXDQoJCQkJCU1BZ0dCZ1FBamtZQkFUQVRCZ1lFQUk1R0FRWXdDUVlIQkFDT1JnRUdBVEJvQmdZRUFJNUdBUVV3WGpBdEZpZG8NCgkJCQkJZEhSd2N6b3ZMM2QzZHk1alpYSjBMbVp1YlhRdVpYTXZjR1J6TDFCRVUxOWxjeTV3WkdZVEFtVnpNQzBXSjJoMA0KCQkJCQlkSEJ6T2k4dmQzZDNMbU5sY25RdVptNXRkQzVsY3k5d1pITXZVRVJUWDJWdUxuQmtaaE1DWlc0d0N3WUdCQUNPDQoJCQkJCVJnRURBZ0VQTUI4R0ExVWRJd1FZTUJhQUZOeFFscC9YTVluSkVlVHZsbC8yWDRKU1JtSlRNSUhmQmdOVkhSOEUNCgkJCQkJZ2Rjd2dkUXdnZEdnZ2M2Z2djdUdnWnhzWkdGd09pOHZiR1JoY0hKbGNDNWpaWEowTG1adWJYUXVaWE12UTA0OQ0KCQkJCQlRMUpNT0RnekxFOVZQVUZESlRJd1VtVndjbVZ6Wlc1MFlXTnBiMjRzVDFVOVEwVlNSVk1zVHoxR1RrMVVMVkpEDQoJCQkJCVRTeERQVVZUUDJObGNuUnBabWxqWVhSbFVtVjJiMk5oZEdsdmJreHBjM1E3WW1sdVlYSjVQMkpoYzJVL2IySnENCgkJCQkJWldOMFkyeGhjM005WTFKTVJHbHpkSEpwWW5WMGFXOXVVRzlwYm5TR0ttaDBkSEE2THk5M2QzY3VZMlZ5ZEM1bQ0KCQkJCQlibTEwTG1WekwyTnliSE55WlhBdlExSk1PRGd6TG1OeWJEQU5CZ2txaGtpRzl3MEJBUXNGQUFPQ0FRRUF1VGp1DQoJCQkJCU9MU0UwRzBoUzMyN1MwNzF3dU1uZEgrbDJkYkVuWHpHWjh5ZnZrVmVETFdGR08ycFBrbDVib1NZWUMxQVRra0MNCgkJCQkJY2FsK3NlNnJLM3ZzbTFjVnh1anR2YXgxdEdoN1NEQVJUQkJ4Y3FOcjhhNHhWSit3Q1M2My9md2RTUG1ha3hsVw0KCQkJCQl5QlNHdjV5UnNDZXloc1JwVHlzNnpIOW5BeTc2ZHhQc1JwVFJRTWErMk1mcDRrZjFOMkkyK1hvSHcveThZMzV4DQoJCQkJCVgrR1JLSWdDMmJFbHpKL2NGNVB1UUtra1hzenV4aVNUY2R2SFVSYzlKa1N4S0JFOE9Mak5JZUxxWkMwOWl1QlYNCgkJCQkJbElaSE1tNHNZZDEzTWZFbFdhZkhBNTNvSzVRWXdRRXNUNWhma0JOQml1c0VzSERZc1lZMW5xa05oRlRIY2RTOQ0KCQkJCQl2SnB5ZUdzTG9HWXRaeStFS1E9PQ0KCQkJCTwvZHM6WDUwOUNlcnRpZmljYXRlPg0KCQkJPC9kczpYNTA5RGF0YT4NCgkJPC9kczpLZXlJbmZvPg0KCQk8ZHM6T2JqZWN0Pg0KCQkJPHhhZGVzOlF1YWxpZnlpbmdQcm9wZXJ0aWVzIHhtbG5zOnhhZGVzPSJodHRwOi8vdXJpLmV0c2kub3JnLzAxOTAzL3YxLjMuMiMiIHhtbG5zOnhhZGVzdjE0MT0iaHR0cDovL3VyaS5ldHNpLm9yZy8wMTkwMy92MS40LjEjIiBUYXJnZXQ9IiNTaWduYXR1cmUtMTM3NTc1ODAxOCI+DQoJCQkJPHhhZGVzOlNpZ25lZFByb3BlcnRpZXMgSWQ9IlNpZ25lZFByb3BlcnRpZXMtMjYxNzI3OTMiPg0KCQkJCQk8eGFkZXM6U2lnbmVkU2lnbmF0dXJlUHJvcGVydGllcz4NCgkJCQkJCTx4YWRlczpTaWduaW5nVGltZT4yMDIxLTAzLTMwVDEwOjE3OjM0LjMzM1o8L3hhZGVzOlNpZ25pbmdUaW1lPg0KCQkJCQkJPHhhZGVzOlNpZ25pbmdDZXJ0aWZpY2F0ZT4NCgkJCQkJCQk8eGFkZXM6Q2VydD4NCgkJCQkJCQkJPHhhZGVzOkNlcnREaWdlc3Q+DQoJCQkJCQkJCQk8ZHM6RGlnZXN0TWV0aG9kIEFsZ29yaXRobT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS8wNC94bWxlbmMjc2hhMjU2Ii8+DQoJCQkJCQkJCQk8ZHM6RGlnZXN0VmFsdWU+THViRzBuOEliWG5QVW1tZmhVUnJmWUV0U3hzOXlYbm5kMTZtM0hjc1FtND08L2RzOkRpZ2VzdFZhbHVlPg0KCQkJCQkJCQk8L3hhZGVzOkNlcnREaWdlc3Q+DQoJCQkJCQkJCTx4YWRlczpJc3N1ZXJTZXJpYWw+DQoJCQkJCQkJCQk8ZHM6WDUwOUlzc3Vlck5hbWU+Q049QUMgUmVwcmVzZW50YWNp824sIE9VPUNFUkVTLCBPPUZOTVQtUkNNLCBDPUVTPC9kczpYNTA5SXNzdWVyTmFtZT4NCgkJCQkJCQkJCTxkczpYNTA5U2VyaWFsTnVtYmVyPjk5NTIwNjA4Mzc1MzUxODU1Nzg0NjU0NDY2NDI0NTI2NzYwMTc2PC9kczpYNTA5U2VyaWFsTnVtYmVyPg0KCQkJCQkJCQk8L3hhZGVzOklzc3VlclNlcmlhbD4NCgkJCQkJCQk8L3hhZGVzOkNlcnQ+DQoJCQkJCQk8L3hhZGVzOlNpZ25pbmdDZXJ0aWZpY2F0ZT4NCgkJCQkJCTx4YWRlczpTaWduYXR1cmVQb2xpY3lJZGVudGlmaWVyPg0KCQkJCQkJCTx4YWRlczpTaWduYXR1cmVQb2xpY3lJZD4NCgkJCQkJCQkJPHhhZGVzOlNpZ1BvbGljeUlkPg0KCQkJCQkJCQkJPHhhZGVzOklkZW50aWZpZXI+aHR0cHM6Ly93d3cuYmF0dXouZXVzL2ZpdHhhdGVnaWFrL2JhdHV6L3RpY2tldGJhaS9zaW5hZHVyYV9lbGVrdHJvbmlrb2FyZW5femVoYXp0YXBlbmFrX2VzcGVjaWZpY2FjaW9uZXNfZGVfbGFfZmlybWFfZWxlY3Ryb25pY2FfdjFfMC5wZGY8L3hhZGVzOklkZW50aWZpZXI+DQoJCQkJCQkJCTwveGFkZXM6U2lnUG9saWN5SWQ+DQoJCQkJCQkJCTx4YWRlczpTaWdQb2xpY3lIYXNoPg0KCQkJCQkJCQkJPGRzOkRpZ2VzdE1ldGhvZCBBbGdvcml0aG09Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvMDQveG1sZW5jI3NoYTI1NiIvPg0KCQkJCQkJCQkJPGRzOkRpZ2VzdFZhbHVlPlF1em45OHgzUE1iU0h3YlV6YWo1ZjVLT3BpSDB1OGJ2bXdiYmJOa085RXM9PC9kczpEaWdlc3RWYWx1ZT4NCgkJCQkJCQkJPC94YWRlczpTaWdQb2xpY3lIYXNoPg0KCQkJCQkJCQk8eGFkZXM6U2lnUG9saWN5UXVhbGlmaWVycz4NCgkJCQkJCQkJCTx4YWRlczpTaWdQb2xpY3lRdWFsaWZpZXI+DQoJCQkJCQkJCQkJPHhhZGVzOlNQVVJJPmh0dHBzOi8vd3d3LmJhdHV6LmV1cy9maXR4YXRlZ2lhay9iYXR1ei90aWNrZXRiYWkvc2luYWR1cmFfZWxla3Ryb25pa29hcmVuX3plaGF6dGFwZW5ha19lc3BlY2lmaWNhY2lvbmVzX2RlX2xhX2Zpcm1hX2VsZWN0cm9uaWNhX3YxXzAucGRmPC94YWRlczpTUFVSST4NCgkJCQkJCQkJCTwveGFkZXM6U2lnUG9saWN5UXVhbGlmaWVyPg0KCQkJCQkJCQk8L3hhZGVzOlNpZ1BvbGljeVF1YWxpZmllcnM+DQoJCQkJCQkJPC94YWRlczpTaWduYXR1cmVQb2xpY3lJZD4NCgkJCQkJCTwveGFkZXM6U2lnbmF0dXJlUG9saWN5SWRlbnRpZmllcj4NCgkJCQkJPC94YWRlczpTaWduZWRTaWduYXR1cmVQcm9wZXJ0aWVzPg0KCQkJCTwveGFkZXM6U2lnbmVkUHJvcGVydGllcz4NCgkJCTwveGFkZXM6UXVhbGlmeWluZ1Byb3BlcnRpZXM+DQoJCTwvZHM6T2JqZWN0Pg0KCTwvZHM6U2lnbmF0dXJlPg0KCTwvVDpUaWNrZXRCYWk+</TicketBai> </FacturaEmitida> </FacturasEmitidas> </lrpjfecsgap:LROEPJ240FacturasEmitidasConSGAltaPeticion> |
#4
|
||||
|
||||
Cita:
Parece que el fichero esta bien. Si no recuerdo mal es por el protocolo con el que estas intentando enviar. En Bizkaia sólo admiten [THTTPSecureProtocol.TLS12] Un Saludo. |
#5
|
|||
|
|||
Cita:
Muchas gracias por la info! Voy a ponerme a buscar como solucionarlo! |
#6
|
||||
|
||||
Buenos días. Una pregunta rápida.
¿Os funcionan las comprobaciones en facturas en Guipuzkoa? Estoy utilizando las siguientes URLs que corresponden a facturas que han subido a guipuzkoa correctamente: https://tbai.egoitza.gipuzkoa.eus/qr...i=79.86&cr=128 https://tbai.egoitza.gipuzkoa.eus/qr...i=44.00&cr=113 https://tbai.egoitza.gipuzkoa.eus/qr...=106.48&cr=165 ¿Os está funcionando la comprobación con vuestras facturas?
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#7
|
||||
|
||||
Cita:
|
#8
|
|||
|
|||
Cita:
He implementado este codigo para usar el protocolo [THTTPSecureProtocol.TLS12]: Código:
SSLContext sslContext = SSLContext.getInstance("TLSv1.2"); sslContext.init(keyManagerFactory.getKeyManagers(), trustManagerFactory.getTrustManagers(), new SecureRandom()); con.setSSLSocketFactory(sslContext.getSocketFactory()); Dejo por aqui el set de mis headers y del cuerpo de la peticion. Código:
String jsonHeader = "{\"con\": \"LROE\",\"apa\": \"1.1\",\"inte\": {\"nif\": \"" + nif + "\",\"nrs\": \"" + nrs + "\"},\"drs\": {\"mode\": \"240\",\"ejer\": \"" + nExercici + "\"}}"; con.setRequestProperty("Accept-Encoding", "gzip"); con.setRequestProperty("Content-Encoding", "gzip"); con.setRequestProperty("Content-Length ",String.valueOf(Files.readAllBytes(comprimitBizkaia.toPath()).length)); con.setRequestProperty("Content-Type", "application/octet-stream"); con.setRequestProperty("eus-bizkaia-n3-version", "1.0"); con.setRequestProperty("eus-bizkaia-n3-content-type", "application/xml"); con.setRequestProperty("eus-bizkaia-n3-data", jsonHeader); con.setRequestProperty("Method", "POST"); OutputStream os = con.getOutputStream(); os.write(Files.readAllBytes(comprimitBizkaia.toPath())); os.close(); con.connect(); |
#9
|
||||
|
||||
Ya no te puedo decir mas ya que yo lo tengo en java. Pero revisaría lo del protocolo
|
#10
|
|||
|
|||
Cita:
Saludos. |
#11
|
|||
|
|||
Cita:
Estoy viendo como solucionar todo el tema este, dado que ya uso el protocolo adecuado, he visto que una de las causas del error 400 es el tamaño del cuerpo. Yo pongo pongo el tamaño del cuerpo en la cabecera asi: Código:
con.setRequestProperty("Content-Length ",String.valueOf(Files.readAllBytes(comprimitBizkaia.toPath()).length)); Saludos. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
SII -Nuevo sistema de la Agencia Tributaria española de envío de datos vía Webservice | newtron | Internet | 3565 | Hace 1 Semana 11:04:13 |
Como utilizar la ayuda del nuevo Sistema Operativo | gluglu | Humor | 3 | 24-09-2007 09:39:05 |
Aplicacion Agencia De Viajes | ArdiIIa | Varios | 9 | 20-01-2007 16:49:53 |
El Vasco Aguirre | Al González | La Taberna | 5 | 26-05-2006 09:22:28 |
Microsoft ha lanzado su nuevo sistema operativo | DarkByte | Humor | 0 | 25-01-2004 09:21:14 |
|