Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Colaboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-04-2021
Pau Haro Pau Haro is offline
Miembro
 
Registrado: mar 2021
Posts: 13
Poder: 0
Pau Haro Va por buen camino
Envio de TicketBAI Batuz

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!
Responder Con Cita
  #2  
Antiguo 06-04-2021
Pau Haro Pau Haro is offline
Miembro
 
Registrado: mar 2021
Posts: 13
Poder: 0
Pau Haro Va por buen camino
Buenas,

Tengo una duda, en el documento Especificaciones del envío masivo del LROE 1.0.6 de Batuz, aparece en el apartado (5.1.1 Envío de la información) :
Cita:
Es requisito utilizar un certificado electrónico para realizar la petición al servicio de entradas,
certificado con el que se autentica al presentador del envío. El presentador puede ser el propio
obligado tributario o una persona que actúe en su nombre.
▪ Dicho certificado debe incluirse en la petición https que se realice al servicio de entrada
y se utiliza como base del servicio para la identificación y uso.
▪ Los tipos de certificados admitidos para los envíos de los LROE son los siguientes:
o Certificado de persona física.
BATUZ- LROE
Batuz_LROE_Especificaciones_Envío_Masivo_V1_0_6.docx
26/02/2021 14/44
o Certificado de representante de entidad.
o Sello de empresa.
o Sello de autónomo.
o Certificado de dispositivo (debe estar censado para el obligado tributario en
DFB/BFA)
El certificado al que se refiere, es el mismo que usamos para firmar el XML que enviamos a Guipuzkoa por ejemplo, verdad?

Y para enviar-lo se supone que lo tenemos que usar para el SSL como en Guipuzkoa?

Gracias.
Responder Con Cita
  #3  
Antiguo 11-04-2021
Avatar de keys
keys keys is offline
Miembro
 
Registrado: sep 2003
Ubicación: Bilbao
Posts: 1.235
Poder: 24
keys Va por buen camino
El tema de los certificados es igual en Bizkaia que en Gipuzkoa.
Responder Con Cita
  #4  
Antiguo 12-04-2021
Galaxian Galaxian is offline
Miembro
 
Registrado: mar 2021
Posts: 52
Poder: 6
Galaxian Va por buen camino
Todo hecho y funcionando a la perfección con la librería de Chilkat: gestión de certificados, firma, compresión, envío y recepción de la respuesta mediante REST). Además de más completa, eficiente y fácil de usar, es mucho más barata que la Secure Black Box (unos 250€ al cambio una licencia perpetua).

Ahí queda eso.
Responder Con Cita
  #5  
Antiguo 12-04-2021
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.442
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Galaxian Ver Mensaje
Todo hecho y funcionando a la perfección con la librería de Chilkat: gestión de certificados, firma, compresión, envío y recepción de la respuesta mediante REST). Además de más completa, eficiente y fácil de usar, es mucho más barata que la Secure Black Box (unos 250€ al cambio una licencia perpetua).
Gracias por el comentario.
Va bien saberlo para la gente que tenga que realizar la compra.

Si pudieras poner algun código de ejempo sobre firma estaría muy bien, por si otras personas lo buscan.
Estaría bien que pusieras el link a los componentes también, por si alguien quiere revisarlos. Hay muchas descargas y opciones diferentes en la web.

Gracias de nuevo (actualizo el mensaje recopilatorio de opciones con esta).
__________________
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.
Responder Con Cita
  #6  
Antiguo 12-04-2021
Galaxian Galaxian is offline
Miembro
 
Registrado: mar 2021
Posts: 52
Poder: 6
Galaxian Va por buen camino
Cita:
Empezado por Neftali [Germán.Estévez] Ver Mensaje
Gracias por el comentario.
Va bien saberlo para la gente que tenga que realizar la compra.

Si pudieras poner algun código de ejempo sobre firma estaría muy bien, por si otras personas lo buscan.
Estaría bien que pusieras el link a los componentes también, por si alguien quiere revisarlos. Hay muchas descargas y opciones diferentes en la web.
Estoy tratando de enviar un ejemplo pero me da este error (además de no dejarme poner enlaces ni imágenes):

Cita:
Has incluido 15 imágenes en tu mensaje. Tú estás limitado a utilizar 10 imágenes asi que por favor regresa y corriges el problema y continuas de nuevo.

Por imágenes se entiende el uso de caritas, el código vB la etiqueta 'img' y las etiquetas. El huso* de todo esto está sujeto a habilitación en el panel de administración.

* Fe de erratas: La 'h' sobra

Última edición por Neftali [Germán.Estévez] fecha: 12-04-2021 a las 11:51:33. Razón: Corregir los TAGs
Responder Con Cita
  #7  
Antiguo 12-04-2021
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.442
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Galaxian Ver Mensaje
Estoy tratando de enviar un ejemplo pero me da este error (además de no dejarme poner enlaces ni imágenes):

No te preocupes.
Puedes añadir los links "engañando" a vBulletin sustituyendo el http p https por h_t_t_p o h_t_t_p_s (espero que los spammers no se enteren de esto... ).
Si es algo más largo puedes dividirlo en varios mensajes o enviarmelo por privado y yo lo añado al hilo.
__________________
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.

Última edición por Neftali [Germán.Estévez] fecha: 12-04-2021 a las 12:02:35.
Responder Con Cita
  #8  
Antiguo 12-04-2021
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.676
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Cita:
Empezado por Galaxian Ver Mensaje
Estoy tratando de enviar un ejemplo pero me da este error (además de no dejarme poner enlaces ni imágenes):
Hola, hay un control sobre los nuevos usuarios para que no pongan enlaces hasta que lleven al menos 10 mensajes, de todas formas, usa el truco de quitar la primera letra al enlace y un moderador añadirá la "h" al principio, ejemplo:
ttp://www.loquesea.com/loquesea


Lo del "huso" se ve que quien hizo la traducción de vbulletin estaba ese día un poco despistado
Responder Con Cita
  #9  
Antiguo 12-04-2021
Elyas Elyas is offline
Registrado
 
Registrado: mar 2021
Posts: 6
Poder: 0
Elyas Va por buen camino
Cita:
Empezado por Neftali [Germán.Estévez] Ver Mensaje
Gracias por el comentario.
Va bien saberlo para la gente que tenga que realizar la compra.

Si pudieras poner algun código de ejempo sobre firma estaría muy bien, por si otras personas lo buscan.
Estaría bien que pusieras el link a los componentes también, por si alguien quiere revisarlos. Hay muchas descargas y opciones diferentes en la web.

Gracias de nuevo ...con esta).
Quiero añadir que yo también lo he conseguido con la librería chilkat. Iba a compartir mi experiencia y casualidad veo que otros también lo acaban de conseguir. También confirmo que con blacksecurebox se firma sin problemas. Pero la licencia es mucho más cara. Ahí queda eso para los devs en PHP.
Un saludo.
Responder Con Cita
  #10  
Antiguo 26-04-2021
joselugrk joselugrk is offline
Miembro
 
Registrado: abr 2021
Posts: 29
Poder: 0
joselugrk Va por buen camino
Question Ayuda Chilkat

Cita:
Empezado por Galaxian Ver Mensaje
Todo hecho y funcionando a la perfección con la librería de Chilkat: gestión de certificados, firma, compresión, envío y recepción de la respuesta mediante REST). Además de más completa, eficiente y fácil de usar, es mucho más barata que la Secure Black Box (unos 250€ al cambio una licencia perpetua).

Ahí queda eso.
Hola Galaxian, me podrías ayudar con Chilkat. Estoy utilizando la librería Chilkat para generar el XML de TicketBAI y firmarlo. Pero no sé como has realizado la compresión, envío y recepción de la respuesta. Me podrías ayudar y indicarme los pasos. Aunque utilizo VB6 para el desarrollo no he encontrado ningún foro a excepción de este que trate el tema de TickectBAI. Y por cierto, me está ayudando mucho.

Saludos y muchas gracias por todo,
Joselu
Responder Con Cita
  #11  
Antiguo 27-04-2021
aar1 aar1 is offline
Registrado
 
Registrado: abr 2021
Posts: 5
Poder: 0
aar1 Va por buen camino
Cita:
Empezado por joselugrk Ver Mensaje
Hola Galaxian, me podrías ayudar con Chilkat. Estoy utilizando la librería Chilkat para generar el XML de TicketBAI y firmarlo. Pero no sé como has realizado la compresión, envío y recepción de la respuesta. Me podrías ayudar y indicarme los pasos. Aunque utilizo VB6 para el desarrollo no he encontrado ningún foro a excepción de este que trate el tema de TickectBAI. Y por cierto, me está ayudando mucho.

Saludos y muchas gracias por todo,
Joselu
Hola joselugrk.

Para realizar la conexión del envío debes utilizar ChilkatSocket, este es un ejemplo en VB6 (Bizkaia):

Código Delphi [-]
Dim socket As New ChilkatSocket
success = socket.SetSslClientCertPfx("tu certificado.fpx", "contraseña del certificado")
success = socket.Connect("pruesarrerak.bizkaia.eus", 443, True, 5000)

Para comprimir y realizar el envío utiliza ChilkatRest y ChilkatStringBuilder:

Código Delphi [-]
Dim rest As New ChilkatRest
success = rest.UseConnection(socket, True)

rest.AddHeader "Accept-Encoding", "gzip"
rest.AddHeader "Content-Encoding", "gzip"
rest.AddHeader "Content-Length", filesize
rest.AddHeader "Content-Type", "application/octet-stream"
rest.AddHeader "eus-bizkaia-n3-version", "1.0"
rest.AddHeader "eus-bizkaia-n3-content-type", "application/xml"
rest.AddHeader "eus-bizkaia-n3-data", cadenajson

Dim dat As String

Dim stringBuilder As New ChilkatStringBuilder
success = stringBuilder.LoadFile("archivo XML a enviar", "utf-8")

dat = stringBuilder.GetAsString()

success = rest.SendReqStringBody("POST", "/N3B4000M/aurkezpena", dat)

No hace falta comprimir el archivo antes de enviarlo, ChilkatRest lo comprime y lo envía.

Para leer la cabecera de la respuesta:

Código Delphi [-]
success = rest.ReadResponseHeader()
dat = rest.ResponseHeader()

Para leer el archivo comprimido incluido en el body de la respuesta:

Código Delphi [-]
Dim aux_bin As New ChilkatBinData

aux_bin.AppendBinary (rest.ReadRespBodyBinary())
aux_bin.WriteFile "nombre del archivo comprimido donde se guarda la respuesta"
Dim gzip As New ChilkatGzip
success = gzip.UncompressFile("nombre del archivo comprimido donde se guarda la respuesta", "nombre del archivo XML descomprimido")

No he incluido las verificaciones de la variable success para no extender el código.

Espero que te sirva de ayuda.

Un saludo.

Última edición por Neftali [Germán.Estévez] fecha: 27-04-2021 a las 11:51:29. Razón: Añadir TAG's al mensaje para el código
Responder Con Cita
  #12  
Antiguo 27-04-2021
Galaxian Galaxian is offline
Miembro
 
Registrado: mar 2021
Posts: 52
Poder: 6
Galaxian Va por buen camino
No es necesario añadir la cabecera "Content-Length" porque aún no se conoce el tamaño de los datos comprimidos. Esa cabecera será generada por la librería Chilkat una vez comprima el archivo y conozca su tamaño final.
Responder Con Cita
  #13  
Antiguo 27-04-2021
joselugrk joselugrk is offline
Miembro
 
Registrado: abr 2021
Posts: 29
Poder: 0
joselugrk Va por buen camino
Thumbs up Envío de Ficheros con ChilKat

Cita:
Empezado por aar1 Ver Mensaje
Hola joselugrk.

Para realizar la conexión del envío debes utilizar ChilkatSocket, este es un ejemplo en VB6 (Bizkaia):

Código Delphi [-]
Dim socket As New ChilkatSocket
success = socket.SetSslClientCertPfx("tu certificado.fpx", "contraseña del certificado")
success = socket.Connect("pruesarrerak.bizkaia.eus", 443, True, 5000)

Para comprimir y realizar el envío utiliza ChilkatRest y ChilkatStringBuilder:

Código Delphi [-]
Dim rest As New ChilkatRest
success = rest.UseConnection(socket, True)

rest.AddHeader "Accept-Encoding", "gzip"
rest.AddHeader "Content-Encoding", "gzip"
rest.AddHeader "Content-Length", filesize
rest.AddHeader "Content-Type", "application/octet-stream"
rest.AddHeader "eus-bizkaia-n3-version", "1.0"
rest.AddHeader "eus-bizkaia-n3-content-type", "application/xml"
rest.AddHeader "eus-bizkaia-n3-data", cadenajson

Dim dat As String

Dim stringBuilder As New ChilkatStringBuilder
success = stringBuilder.LoadFile("archivo XML a enviar", "utf-8")

dat = stringBuilder.GetAsString()

success = rest.SendReqStringBody("POST", "/N3B4000M/aurkezpena", dat)

No hace falta comprimir el archivo antes de enviarlo, ChilkatRest lo comprime y lo envía.

Para leer la cabecera de la respuesta:

Código Delphi [-]
success = rest.ReadResponseHeader()
dat = rest.ResponseHeader()

Para leer el archivo comprimido incluido en el body de la respuesta:

Código Delphi [-]
Dim aux_bin As New ChilkatBinData

aux_bin.AppendBinary (rest.ReadRespBodyBinary())
aux_bin.WriteFile "nombre del archivo comprimido donde se guarda la respuesta"
Dim gzip As New ChilkatGzip
success = gzip.UncompressFile("nombre del archivo comprimido donde se guarda la respuesta", "nombre del archivo XML descomprimido")

No he incluido las verificaciones de la variable success para no extender el código.

Espero que te sirva de ayuda.

Un saludo.
Lo reviso, y sobre todo muchas gracias por todo.
Joselu
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

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 3716 19-01-2026 20:01:34
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


La franja horaria es GMT +2. Ahora son las 03:44:28.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi