FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
No consigo que mis XML pasen correctamente
Buenos días: Llevo dos semanas con este tema y no consigo nada.. como dije yo soy contable y de INFORMATICO desafortunadamente nada, pero tengo mucha voluntad de saber, por ejemplo, así he revisado las 17 paginas del foro por ejemplo no sé ni siquiera qué significa deserializando. Perdonad mi ignorancia. ¿Alguno de vosotros me puede echar una mano o mandarme un fichero a modo de prueba que haya pasado y no me de este tipo de mensajes u otros que no me dejen avanzar para hacer consultas posteriores, etc, también en modo de prueba?. Yo hago lo siguiente: Paso 1- Genero un .DOC y lo Guardo como WEB para XML, en total como 3 hojas y media (que adjunto) Paso 2- Entro en AEAT, clicleo EXAMINAR. y a continuación incluye como Peticion a la izquierda de la pantalla un fichero donde ya aparecen como 10 hojas más y en las primeras líneas aparece <meta http-equiv=Content-Type ... que tu me dices debería ser así <meta http-equiv="Content-Type". Yo no puedo corregir eso, no me deja, ni tampoco se como cambiar o que cambiar en el DOC del Paso 1, porque he copiado literalmente un ejemplo que incluye en la documentación la propia AEAT, con un copy/pega. Pasos 5 y 4-Como consecuencia de ello, al cliclear ENVIAR, la AEAT me rellena la parte derecha de la pantalla, y me da los consabidos mensajes, de lo de las comas. No puedo dejar este tema sin resolverlo, PERO LO QUE NO ENTIENDO ES EL PORQUE DE UN XML DE 3,5 HOJAS (El DOC que convierto en XML), LA AEAT LO CONVIERTE EN ALGO MUY DISTINTO y las 3,5 hojas las convierte en más de 10 hojas, cuando la da como recibida la AEAT.. Y POR ESO PENSE QUE ERA EL CONVERSOR QUE UTILIZA MI PC DEL WORD--> GUARDAR COMO WEB. Probablemente esto es muy básico para un INFORMATICO, pero para mi nada de nada. Muchas GRACIAS por todo.. |
#2
|
|||
|
|||
No consigo que mis XML pasen correctamente (continua los Anexos)
.... corrijo... he contado las páginas, que van de 3,5 a 57,
.... no se porque no se han adjuntado los anexos con mi texto anterior..puede ser por el tamaño ... u otro tema ??? Gracias anticipadas colaboración. |
#3
|
|||
|
|||
Cita:
Es algo mas complejo de hacer. Y si quieres hacerlo a mano olvídate de word y usa notepad u otro editor de texto sencillo. |
#4
|
||||
|
||||
Cita:
En unos ¿dias?. La Aeat va sacar una manera de presentar las facturas a mano una a una, no se va a poder importar ficheros. Igual es esto lo que necesitas. Cambiando de tema. La Aeat ha puesto un enlace https://www7.aeat.es/PRE-Exteriores/...formacion.htmlen "Acceso al portal de pruebas del SII-->Presentacion--> Cliente de web service para el entorno de pruebas", se accede a un formulario que simula el comportamiento de un WebService para la presentación de Información del SII. Es decir es como Wizdler. Un Saludo. |
#5
|
|||
|
|||
Buenas a todos.
Últimamente me sale este error: "Ha surgido un problema: System.Net.WebException: Anulada la solicitud: No se puede crear un canal seguro SSL/TLS." He intentando con un par de soluciones que ponen por internet como por estas 2 líneas: private static Boolean ValidarCertificado(object sender, System.Security.Cryptography.X509Certificates.X509Certificate certificate, System.Security.Cryptography.X509Certificates.X509Chain chain, System.Net.Security.SslPolicyErrors sslPolicyErrors) { return true; } System.Net.ServicePointManager.ServerCertificateValidationCallback = new System.Net.Security.RemoteCertificateValidationCallback(ValidarCertificado); CredentialCache cache = new CredentialCache(); ¿Os ha pasado a alguno? Yo me estoy volviendo loco. p.d. El certificado está en regla, de hecho es el que utilizo para acceder a Hacienda con credenciales. |
#6
|
|||
|
|||
Pon el código que utilizas para hacer la llamada y lo vemos. ¿Te funcionaba antes?
|
#7
|
|||
|
|||
Versión 0.6
Buenos días:
Ayer cambié a la versión 0.6 tras estar funcionando correctamente la anterior, y ahora ha empezado a darme este error. El tipo de contenido text/xml;charset=ISO-8859-1 del mensaje de respuesta no coincide con el tipo de contenido del enlace (text/xml; charset=utf-8). Si usa un codificador personalizado, asegúrese de que el método IsContentTypeSupported se implemente correctamente. Los primeros 767 bytes de la respuesta fueron: '<?xml version="1.0" encoding="UTF-8"?><env:Envelope xmlns:env="xxxxxxx"><env:Body><env:Fault><faultcode>env:Server</faultcode><faultstring>Codigo[103].nif no identificado: 05404528B</faultstring><detail><callstack>nif no identificado: XXXXXXXXX es.aeat.adht.jdit.api.infra.InfraestructuraExcepcion: nif no identificado: XXXXXXXXX at es.aeat.adht.jdit.imp.iden.IdentificaSrvImpl.validarCertificado(IdentificaSrvImpl.java:545) at es.aeat.adht.jdit.imp.iden.IdentificaSrvImpl.cargaSSL(IdentificaSrvImpl.java:133) at es.aeat.adht.jdit.imp.iden.IdentificaSrvImpl.identificaCertificado(IdentificaSrvImpl.java:284) at es.aeat.adht.jdit.imp.iden.IdenWLPSrvImpl.cargarCertificado(IdenWLPSrvImpl.java:44) at es.aeat.adht.jdit.imp.infra.In'. Le ha ocurrido a alguien más? Gracias. |
#8
|
|||
|
|||
Versión 0.6
Buenos días: Ayer cambié a la versión 0.6 tras estar funcionando correctamente la anterior, y ahora ha empezado a darme este error. El tipo de contenido text/xml;charset=ISO-8859-1 del mensaje de respuesta no coincide con el tipo de contenido del enlace (text/xml; charset=utf-8). Si usa un codificador personalizado, asegúrese de que el método IsContentTypeSupported se implemente correctamente. Los primeros 767 bytes de la respuesta fueron: '<?xml version="1.0" encoding="UTF-8"?><env:Envelope xmlns:env="xxxxxxx"><env:Body><env:Fault><faultcode>env:Server</faultcode><faultstring>Codigo[103].nif no identificado: 05404528B</faultstring><detail><callstack>nif no identificado: XXXXXXXXX es.aeat.adht.jdit.api.infra.InfraestructuraExcepcion: nif no identificado: XXXXXXXXX at es.aeat.adht.jdit.imp.iden.IdentificaSrvImpl.validarCertificado(IdentificaSrvImpl.java:545) at es.aeat.adht.jdit.imp.iden.IdentificaSrvImpl.cargaSSL(IdentificaSrvImpl.java:133) at es.aeat.adht.jdit.imp.iden.IdentificaSrvImpl.identificaCertificado(IdentificaSrvImpl.java:284) at es.aeat.adht.jdit.imp.iden.IdenWLPSrvImpl.cargarCertificado(IdenWLPSrvImpl.java:44) at es.aeat.adht.jdit.imp.infra.In'. Le ha ocurrido a alguien más? Gracias. -------------------- Nada, ya da igual. Me ha funcionado otra vez sin tocar nada. Ha debido ser algo de ellos. |
#9
|
|||
|
|||
Cita:
/* X509Store store = new X509Store(StoreName.My, StoreLocation.LocalMachine); store.Open(OpenFlags.ReadOnly); X509Certificate2Collection certCollection = store.Certificates.Find(X509FindType.FindBySubjectName, "tecnologica", false); foreach (var item in certCollection) { Debug.Print("Item: " + item.SubjectName.Name); } X509Certificate2 cert = certCollection[0]; */ HttpWebRequest request = (HttpWebRequest)WebRequest.Create(connectionString_HACIENDA); request.ContentType = "text/xml"; request.Method = "POST"; request.Credentials = CredentialCache.DefaultCredentials; if (CERTIFICADO != null) { request.ClientCertificates.Add(CERTIFICADO); byte[] bytes = System.Text.Encoding.UTF8.GetBytes(root.ToString()); request.ContentLength = bytes.Length; Stream requestStream = request.GetRequestStream(); requestStream.Write(bytes, 0, bytes.Length); requestStream.Close(); using (HttpWebResponse webResponse = (HttpWebResponse)request.GetResponse()) { using (Stream responseStream = webResponse.GetResponseStream()) { using (StreamReader responseStreamReader = new StreamReader(responseStream, true)) { response = responseStreamReader.ReadToEnd(); responseStreamReader.Close(); } responseStream.Close(); } webResponse.Close(); } Debug.Print("Respuesta: " + response); } Antes si me funcionaba. Antes cogía el certificado a "pelo" que es el código que está comentado al principio. Después lo cambié por algo más visual para que el usuario escogiese el certificado, pero el funcionamiento es idéntico. |
#10
|
|||
|
|||
Y te da el mismo error si descomentas lo de arriba y lo hacías como antes?
|
#11
|
|||
|
|||
Hola. Yo lo intenté hacer con Delphi 7 primero, pero tuve muchos problemas con los WDSL. Incluso importándolos con XE no pude utilizarlos en Delphi 7 por que seguía dando problemas al serializar. Todo lo demás funcionaba bien, SOAP, certificado, etc., pero no conseguí que serializara bien, así que me tuve que pasar a XE2.
|
#12
|
|||
|
|||
¿Sabeís como puedo modificar este código que en principio me funciona para las facturas emitidas?
Quiero dos cosas: 1. Capturar el SOAP Request que envío y el Soap Response que recibo 2. Poder seleccionar un certificado de los disponibles. Ya que somos un grupo de empresas. He utilizado el código VB.NET que comentaba el compañero poniendo el fichero xml en la carpeta y ya no me genera ningún error, pero no recibo respuesta. ¿Existe alguna forma de ver el mensaje SOAP de respuesta? Dim store As Security.Cryptography.X509Certificates.X509Store = New Security.Cryptography.X509Certificates.X509Store(StoreName.My, StoreLocation.CurrentUser) store.Open(Security.Cryptography.X509Certificates.OpenFlags.ReadOnly) Dim CertificadoCorrecto As New System.Security.Cryptography.X509Certificates.X509Certificate2 ' search store ' Dim col As New X509Certificate2Collection 'col = store.Certificates.Find(X509FindType.FindByIssuerName, "FNMT", True) Dim ListCert As String = "" For Each x In store.Certificates MsgBox(x.Subject) Next Respuesta2RichTextBox.Text = ListCert CertificadoCorrecto = store.Certificates(0) '(5) ' Objeto que almacenara la respuesta de la funcion del Web Service Dim resp As New ServiceReference1.RespuestaLRFEmitidasType ' Ws Dim Ws As New ServiceReference1.siiSOAPClient Ws.ClientCredentials.ClientCertificate.Certificate = CertificadoCorrecto Ws.ClientCredentials.UseIdentityConfiguration = True ' Asignamos el certificado: Ws.ClientCredentials.ClientCertificate.Certificate = CertificadoCorrecto ' ---------------------------------------------------------------------------------------- ' ---------------------------------------------------------------------------------------- Dim _SuministroLRFacturasEmitidas As New SuministroLRFacturasEmitidas '-------------------------------------------------------------------------- Try Dim x As New XmlSerializer(_SuministroLRFacturasEmitidas.GetType, "https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/ssii/fact/ws/SuministroLR.xsd") ' A FileStream is needed to read the XML document. Dim filename As String = "facturaEmitidaMODEL.XML" Using reader As New FileStream(filename, FileMode.Open) _SuministroLRFacturasEmitidas = CType(x.Deserialize(reader), SuministroLRFacturasEmitidas) End Using ' SI QUEREMOS SOBREESCRIBIR EL XML ANTES DE ENVIAR: ' SOBREESCRIBIMOS DATS FORM ANTES SEND: _SuministroLRFacturasEmitidas.Cabecera.Titular.NombreRazon = Trim(TextBoxRazonSocialEmisor.Text) _SuministroLRFacturasEmitidas.Cabecera.Titular.NIF = Trim(TextBoxNIFEmisor.Text) '(...) '// se hace la llamada a la funcion suministrada por el WS resp = Ws.SuministroLRFacturasEmitidas(_SuministroLRFacturasEmitidas) Catch ex As Exception MsgBox(ex.Message) ' Respuesta2RichTextBox = ex.Message Finally 'Me.Cursor = Cursors.Default 'Threading.Thread.Sleep(5000) 'ProgressBar1.Style = ProgressBarStyle.Continuous ''ProgressBar1.Value = ProgressBar1.Maximum End Try |
#13
|
|||
|
|||
Pon esto en tu código a ver si funciona:
ServicePointManager.Expect100Continue = true; ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; Si no tienes .NETFramework 4.5, el equivalente es este ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072; No puedo pegarte el enlace de stackoverflow |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
TICKET BAI (TicketBAI); Nuevo sistema de la Agencia Tributaria del Pais Vasco | keys | Internet | 4170 | Hace 3 Semanas 17:29:05 |
AEAT envio de datos vía Webservice problemas con WSDL | CelsoO | Internet | 11 | 09-10-2019 20:03:41 |
webService Soap de la Administración Digital Española notific@ | apicito | Internet | 3 | 31-01-2017 11:25:28 |
Error en Webservice funcion envio de sms | webmasterplc | Delphi para la web | 5 | 25-07-2013 20:10:29 |
Problemas con envío de XML a un WebService | davidvamo | Internet | 1 | 13-02-2007 15:49:20 |
|