Timbrado Tralix WSDL

Foro dedicado para discutir la parte tecnica de como es el timbrado
[[ FORO CERRADO DEBIDO A QUE YA LA INFORMACION YA NO ES VIGENTE ]]
ChuckM
Mensajes: 4
Registrado: Mié Mar 26, 2014 3:45 pm

Timbrado Tralix WSDL

Mensajepor ChuckM » Mié Mar 26, 2014 3:56 pm

Saludos,

Tengo un par de dias intentando realizar pruebas con el servicio de tralix, que se contrato, sin buenos resultados. Lo que hice es utilizar la clase proxy que genera visual studio (en este caso vb.net) y "logre" insertar ya el encabezado HTTP el "customer key" que es un requisito (pongo "logre" entre comillas ya que solo asumo que se inserta bien el campo nuevo en el encabezado ya que aun asi me sale el error). Ya tambien tengo la estructura que llena todos los componentes necesarios para el mensaje utilizando los objectos proxy. Pero al momento de ejecutar la prueba me sale el siguiente error:

"Authentication failed because the remote party has closed the transport stream."

Alguien mas a realizado la conexion por medio de la clases proxy del service reference o se ha topado con este error ??
Estare muy agradecido por su ayuda.

ijmg2000
Mensajes: 56
Registrado: Mar Feb 01, 2011 9:09 pm

Re: Timbrado Tralix WSDL

Mensajepor ijmg2000 » Jue Mar 27, 2014 5:23 pm

Hola, ¿estas detrás de un proxy para timbrar?
Nosotros somos partners de ellos, y siempre sugerimos iniciar las pruebas con soapUI para validar que la conexión es transparente, ya que detectar problemas de red desde la programación es mas complicado, así mismo, te agradezco me compartas a que URL estas enviando el timbrado, por que por el mensaje de error sospecho que estas apuntando al WSDL y no a la URL de timbrado, que no es la misma.

Saludos

ChuckM
Mensajes: 4
Registrado: Mié Mar 26, 2014 3:45 pm

Re: Timbrado Tralix WSDL

Mensajepor ChuckM » Vie Mar 28, 2014 10:04 am

Hola !! muchas gracias por el apoyo.

Si mira soy completamente nuevo manejando webservices. Inicie utilizando el proxy por las recomendaciones que fui leyendo al respecto. Pero que bueno me comentas sobre el soapUI.
He estado intentando meter al campo "HOST" la siguiente direccion https://pruebastfd.tralix.com:7070/ que es la que me proporcionaron en tralix, y no me han podido responder por que dice "Failed to classify input to Workflow." cuando la agrego a navegador. No se si sirva ponerte que la direccion que viene en el endpoint del WSDL que es https://173.205.255.25:7070/.

Saludos

ChuckM
Mensajes: 4
Registrado: Mié Mar 26, 2014 3:45 pm

Re: Timbrado Tralix WSDL

Mensajepor ChuckM » Vie Mar 28, 2014 12:13 pm

ijmg2000 escribió:Hola, ¿estas detrás de un proxy para timbrar?
Nosotros somos partners de ellos, y siempre sugerimos iniciar las pruebas con soapUI para validar que la conexión es transparente, ya que detectar problemas de red desde la programación es mas complicado, así mismo, te agradezco me compartas a que URL estas enviando el timbrado, por que por el mensaje de error sospecho que estas apuntando al WSDL y no a la URL de timbrado, que no es la misma.

Saludos


Saludos de nuevo

Intente probar con soapUI con el WSDL "https://pac.tralix.com/TimbradoCFD.wsdl" y me sale un error al intentar hacer la conexion "org.apache.xmlbeans.XmlException: java.io.CharConversionException: Malformed UTF-8 character: 0xe1 0x6e 0x6" seguire leyendo al respecto pero lo agrego aqui por si hay alguna sugerencia.

ijmg2000
Mensajes: 56
Registrado: Mar Feb 01, 2011 9:09 pm

Re: Timbrado Tralix WSDL

Mensajepor ijmg2000 » Vie Mar 28, 2014 12:57 pm

Hola, como dice el carnicero, vayamos por partes....

- El error "Failed to classify input to Workflow" te lo da porque no se armó correctamente la petición, es probable que no estés usando bien la petición SOAP
- Así mismo, me llama la atención de tu comentario " cuando la agrego a navegador ", por que éste tipo de web service nunca te va a responder vía una petición http en un explorador, esta debe ser manejada de forma distinta en la programación
- Desconozco si hayas tenido oportunidad de documentarte acerca de SOAP ya que es necesario para que puedas realizar tu integración
- Por último el error que te esta enviando soapUI, creo que tiene que ver con que no estas armando correctamente el proyecto, >New SOAP Project >Initial WSDL (https://pac.tralix.com/TimbradoCFD.wsdl) > Ok > y utiliza la URL https://pruebastfd.tralix.com:7070/

Espero te pueda ayudar, te sugiero que logres primero un timbrado en soapUI para que veas lo que recibes como respuesta, y de ahí, puedas llevarlo a código, también recuerdo que por aquí en el foro, hay un post un poco antiguo de como timbrar con Tralix, echale una buscada....saludos

ChuckM
Mensajes: 4
Registrado: Mié Mar 26, 2014 3:45 pm

Re: Timbrado Tralix WSDL

Mensajepor ChuckM » Vie Mar 28, 2014 1:14 pm

Hola
Si ciertamente, sobre el comentario del navegador no va con estas peticiones. Respecto al error que me sale en soapUI, este surge justo cuando le doy en OK y ya no me da oportunidad de ingresar la direccion de pruebas.
Buscare mas respecto a soapUI para ver si debo configurar algo mas y revisare el Post del que me comentas.

Gracias !!

altw1zard
Mensajes: 8
Registrado: Dom Ene 30, 2011 10:26 pm

Re: Timbrado Tralix WSDL

Mensajepor altw1zard » Sab Mar 29, 2014 7:13 am

te envió una parte del codigo que utilizo para timbrar con tralix en vb.net, parte del código lo encontré en un blog del cual no recuerdo el nombre.

espero y te pueda ayudar en algo

Saludos.



Código: Seleccionar todo

    Public Function Timbrar(Url As String, CustomerKey As String, XML As String) As String
        Dim Result As String = String.Empty
        Dim strError As String = String.Empty
        Dim Descripcion As String = String.Empty
        Try

            Dim request As WebRequest = WebRequest.Create(Url)

            request.Method = "POST"
            request.ContentType = "text/xml;charset=""UTF-8"""
            'request.Headers.Add("Accept-Encoding", "gzip,deflate")
            request.Headers.Add("SOAPAction", """urn:TimbradoCFD""")
            request.Headers.Add("CustomerKey", CustomerKey)
            request.Headers.Add("UserAgent", "Jakarta Commons-HttpClient/3.1")

            Using StreamW As StreamWriter = New StreamWriter(request.GetRequestStream)
                StreamW.Write("<soapenv:Envelope xmlns:soapenv=""http://schemas.xmlsoap.org/soap/envelope/"" xmlns:cfdi=""http://www.sat.gob.mx/cfd/3"">")
                StreamW.Write("<soapenv:Header/>")
                StreamW.Write("<soapenv:Body>")
                StreamW.Write(String.Format("{0}", XML))
                StreamW.Write("</soapenv:Body>")
                StreamW.Write("</soapenv:Envelope>")
                ' StreamW.WriteLine()
                StreamW.Flush()
            End Using

            Try

                Using WebResponse As WebResponse = request.GetResponse
                    Using StreamReader As StreamReader = New StreamReader(WebResponse.GetResponseStream)
                        Result = StreamReader.ReadToEnd
                    End Using
                End Using

                Dim xmldoc As New Xml.XmlDocument
                xmldoc.LoadXml(Result)

                strError = Me.GetValue("cfdi:Error", xmldoc.FirstChild.NextSibling, "codigo")
                Descripcion = Me.GetValue("cfdi:descripcionError", xmldoc.FirstChild.NextSibling, String.Empty)

            Catch ex As WebException
                Using StreamRead As StreamReader = New StreamReader(ex.Response.GetResponseStream)
                    Result = StreamRead.ReadToEnd
                    Throw New Exception(Result)
                End Using
            End Try

            If strError <> String.Empty Then Throw New Exception(Descripcion)

            Return Result
        Catch ex As Exception
            Throw
        End Try
    End Function

    Public Function GetValue(Tag As String, Nodo As Xml.XmlNode, Atributo As String) As String
        Try

            If Nodo.Name.ToUpper = Tag.ToUpper Then
                If Atributo <> String.Empty Then
                    Return Nodo.Attributes(Atributo).InnerText
                Else
                    Return Nodo.InnerText
                End If
            Else
                If Not Nodo.FirstChild Is Nothing Then Return GetValue(Tag, Nodo.FirstChild, Atributo)
            End If

        Catch ex As Exception
            Throw
        End Try
    End Function


Volver a “Envio para Timbrado”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 4 invitados