Buenas,
Llevo ya 1 semana intentando enviar el LROE de Bizkaia al servidor utilizando Java, pero no consigo nada mas que Error 400. Os dejo mi petición a continuación, si me pudierais echar una mano se agradecería, "creo que mi error esta en como estoy enviando el GZIP al servidor":
Headers:
Código:
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.setRequestMethod("POST");
jsonHeader:
Cita:
{
"con":"LROE",
"apa":"1.1",
"inte":{
"nif":"xxxxxxxxxx",
"nrs":"xxxxxxxxxxx"
},
"drs":{
"mode":"240",
"ejer":"2021"
}
}
|
Como envio el XML comprimido:
Código:
String foo = new String(Files.readAllBytes(Paths.get("/LROE_Bizkaia.xml")));
ByteArrayOutputStream baos = new ByteArrayOutputStream();
try (GZIPOutputStream gzos = new GZIPOutputStream(baos)) {
gzos.write(foo.getBytes("UTF-8"));
}
byte[] fooGzippedBytes = baos.toByteArray();
OutputStream os = con.getOutputStream();
os.write(fooGzippedBytes);
os.flush();
con.connect();
Gracias!