Foros del Web » Programación para mayores de 30 ;) » .NET »

Problemas con Web Service

Estas en el tema de Problemas con Web Service en el foro de .NET en Foros del Web. Hola que tal, estoy generando una aplicacion en Visual Basic.Net 2013 la cual consiste en capturar una serie de datos, pasarlos a un archivo XML ...
  #1 (permalink)  
Antiguo 26/11/2015, 10:22
Avatar de DanX03  
Fecha de Ingreso: septiembre-2007
Ubicación: México D.F.
Mensajes: 148
Antigüedad: 16 años, 6 meses
Puntos: 3
Problemas con Web Service

Hola que tal, estoy generando una aplicacion en Visual Basic.Net 2013 la cual consiste en capturar una serie de datos, pasarlos a un archivo XML y subirlos al SOAP mediante un Web Service.
Puedo constuir el XML sin problema, el detalle es que al momento de hacer el proceso de la carga de dicho XML al WS me genera un error en el XML, yo he impreso lo que contiene la variable del XML, copio el contenido del mismo y hago el proceso en SOAP si levanta la solicitud sin problemas, ¿cuál es el error que se presenta?, he cambiado el tipo de variable que almacena el XML y sigue presentando ese detalle.
  #2 (permalink)  
Antiguo 26/11/2015, 10:58
Avatar de DanX03  
Fecha de Ingreso: septiembre-2007
Ubicación: México D.F.
Mensajes: 148
Antigüedad: 16 años, 6 meses
Puntos: 3
Respuesta: Problemas con Web Service

Aqui mi codigo:
Código:
Public archivo, campos() As String, fecha As String, fechareg As String, nombrearchivo As String, strRuta As String, fechai As String, fechaf As String
Public fechaff As String, folio As String, folio2 As String, objeto As Object, fechaii As String, errores As Integer, periodo As String, arc As XmlDocument, DocumentoXML As XmlDocument
Public Sub Reservacion_HBSI(ByVal Vector As String)
errores = 0
fecha = CStr(Date.Now())
fechareg = Mid(fecha, 7, 4) & Mid(fecha, 4, 2) & Microsoft.VisualBasic.Left(fecha, 2)
campos = Split(Vector, "|")
fechai = Mid(campos(8).ToString, 7, 4) & "-" & Mid(campos(8).ToString, 4, 2) & "-" & Microsoft.VisualBasic.Left(campos(8).ToString, 2)
fechaf = Mid(campos(9).ToString, 7, 4) & "-" & Mid(campos(9).ToString, 4, 2) & "-" & Microsoft.VisualBasic.Left(campos(9).ToString, 2)
folio2 = Microsoft.VisualBasic.Right(folio, 12)
'Generacion del archivo XML
archivo = "<soap:Envelope xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "<soap:Header>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "<Interface xmlns='http://www.cmf.altiuspar.com' Name='ECPConnect' Version='4.0'>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "<PayloadInfo ExpirationDateTime='2014-12-23T07:20:38+00:00' Location='Body' RequestId='" & folio2 & "' RequestorId='HBSi' ResponderId='POSADAS'>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "<CommDescriptor DestinationId='POSADAS' RetryIndicator='false' SourceId='HBSi'>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "<Authentication Password='super' Username='userHBSi'/>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "</CommDescriptor>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "<PayloadDescriptor Name='OTA_HotelResNotifRQ' Version='2003A'>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "<PayloadReference SupplierBrandCode='" & campos(23).ToString & "' SupplierChainCode='POSADAS' SupplierHotelCode='" & campos(6).ToString & "'/>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "</PayloadDescriptor>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "</PayloadInfo>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "</Interface>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "</soap:Header>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "<soap:Body>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "<requestOTAOperationin0 xmlns='http://ws.servicerequest.cmf.altiuspar.com'>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "<OTA_HotelResNotifRQ EchoToken='" & folio2 & "' PrimaryLangID='en-us' ResStatus='Commit' Target='Production' TimeStamp='2014-02-13T14:42:00-07:00' Version='1.000' xmlns='http://www.opentravel.org/OTA/2003/05' xmlns:soap-env='http://schemas.xmlsoap.org/soap/envelope/'>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "<POS>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "<Source>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "<RequestorID ID='" & campos(18).ToString & "' Type='18'/>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "<BookingChannel Primary='true' Type='2'>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "<CompanyName>HBSI</CompanyName>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "</BookingChannel>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "</Source>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "</POS>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "<HotelReservations>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "<HotelReservation CreateDateTime='" & Format(Now(), "yyyy-MM-ddThh:mm:ss-07:00") & "' CreatorID='" & campos(18).ToString & "' RoomStayReservation='true'>" & Microsoft.VisualBasic.vbNewLine
archivo = archivo & "<UniqueID ID='" & folio & "' Type='14'/>" & Microsoft.VisualBasic.vbNewLine...
arc = ConvertiraXML(archivo)
Try
Dim WSHB = New WSHBSI.EndPointServiceHB
frmarchivo.Show()
WSHB.validate()
WSHB.requestOTAOperation(arc)
MsgBox("El Archivo se ha cargado con exito al Web Services." & Environment.NewLine & "Debes checar el log correspondiente para obtener el Unique ID", MsgBoxStyle.OkOnly, "Registro Posadas 1.0: Aviso")
Catch Ex As Exception
MsgBox("Se produjo un error: " + Ex.Message.ToString(), MsgBoxStyle.Exclamation, "Registro Posadas 1.0: Aviso")
errores = 1
End Try
End Sub
  #3 (permalink)  
Antiguo 26/11/2015, 12:07
(Desactivado)
 
Fecha de Ingreso: enero-2015
Mensajes: 393
Antigüedad: 9 años, 2 meses
Puntos: 52
Respuesta: Problemas con Web Service

Hola.

Borrá todo ese código de inmediato y lee esto:

http://www.elguille.info/colabora/NE...WebService.htm
  #4 (permalink)  
Antiguo 27/11/2015, 09:54
Avatar de DanX03  
Fecha de Ingreso: septiembre-2007
Ubicación: México D.F.
Mensajes: 148
Antigüedad: 16 años, 6 meses
Puntos: 3
Respuesta: Problemas con Web Service

El detalle es que tengo que enviar un archivo XML al WS para poder procesar la informacion, por eso es que lo tengo asi, primero genero el XML para que despues pueda procesarlo el WS, la pagina que mecionas:

ya la habia checado, ahi solo se menciona un consumo simple del WS sin realizar un XML
  #5 (permalink)  
Antiguo 27/11/2015, 10:15
(Desactivado)
 
Fecha de Ingreso: enero-2015
Mensajes: 393
Antigüedad: 9 años, 2 meses
Puntos: 52
Respuesta: Problemas con Web Service

Todos los Web Services de este tipo utilizan XML, pero no tenés que construir el XML a mano, sino que .NET te lo hace de manera automática. Eso que estás haciendo es incorrecto. No necesitás construir el SOAP message a mano, a menos que el servicio esté muy mal hecho.

Cuál es la URL del servicio? es público? se puede ver, como para tener una idea de los parámetros que requiere?
  #6 (permalink)  
Antiguo 27/11/2015, 12:25
Avatar de DanX03  
Fecha de Ingreso: septiembre-2007
Ubicación: México D.F.
Mensajes: 148
Antigüedad: 16 años, 6 meses
Puntos: 3
Respuesta: Problemas con Web Service

El servicio es privado, por lo que no se puede ver publicamente, yo lo genero asi porque la instrucion que hace la peticion de la carga de datos pide un objeto XML como requerimiento, en otro momento subo una imagen de los datos que solicita asi como de las funciones que se requieren ejecutar para que el SOAP procese la solicitud
  #7 (permalink)  
Antiguo 02/12/2015, 06:44
Avatar de DanX03  
Fecha de Ingreso: septiembre-2007
Ubicación: México D.F.
Mensajes: 148
Antigüedad: 16 años, 6 meses
Puntos: 3
Respuesta: Problemas con Web Service

Estas son las imagenes del proyecto que estoy realizando:



Espero que me puedan ayudar, ya que si genero el XML de forma correcta, el detalle es la comunicacion con el WS, ya que me manda como error algo referente a la conexion.
  #8 (permalink)  
Antiguo 03/12/2015, 13:59
Avatar de Namiwis  
Fecha de Ingreso: mayo-2013
Ubicación: Crustaceo Cascarudo
Mensajes: 162
Antigüedad: 10 años, 11 meses
Puntos: 10
Respuesta: Problemas con Web Service

Hola DanX03

Que error te arroja el WS? como te lo pide el WS que lo envies como string, base64 como?

Puedes poner la URL del WebService? para poder entenderlo un poco mejor

Saludos.
__________________
http://binarysuns.com.mx/
  #9 (permalink)  
Antiguo 04/12/2015, 13:47
Avatar de DanX03  
Fecha de Ingreso: septiembre-2007
Ubicación: México D.F.
Mensajes: 148
Antigüedad: 16 años, 6 meses
Puntos: 3
Respuesta: Problemas con Web Service

La URL del WS es: http://10.36.50.135:55020/CMF_Servic...st/ECA_HB?WSDL
  #10 (permalink)  
Antiguo 17/12/2015, 11:31
Avatar de DanX03  
Fecha de Ingreso: septiembre-2007
Ubicación: México D.F.
Mensajes: 148
Antigüedad: 16 años, 6 meses
Puntos: 3
Respuesta: Problemas con Web Service

Hola de nuevo, creo que encontre cual es el problema, checando la conexion con fiddler2 a la hora de hacer el pase de la variable la muestra de la siguiente forma:

Código:
<?xml version="1.0" encoding="utf-8"?>
    <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
        <soap:Body>
            <requestOTAOperationin0 xsi:type="xsd:string" xmlns="http://ws.servicerequest.cmf.altiuspar.com/">
                &lt;soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"&gt;
   &lt;soap:Header&gt;
       &lt;Interface xmlns="http://www.cmf.altiuspar.com" Name="ECPConnect" Version="4.0"&gt;
           &lt;PayloadInfo ExpirationDateTime="2014-12-23T07:20:38+00:00" Location="Body" RequestId="151217060581" RequestorId="HBSi" ResponderId="POSADAS"&gt;
               &lt;CommDescriptor DestinationId="POSADAS" RetryIndicator="false" SourceId="HBSi"&gt;
                   &lt;Authentication Password="super" Username="userHBSi"/&gt;
                &lt;/CommDescriptor&gt;
               &lt;PayloadDescriptor Name="OTA_HotelResNotifRQ" Version="2003A"&gt;
                   &lt;PayloadReference SupplierBrandCode="FI" SupplierChainCode="POSADAS" SupplierHotelCode="TIO"/&gt;
               &lt;/PayloadDescriptor&gt;
           &lt;/PayloadInfo&gt;
       &lt;/Interface&gt;
   &lt;/soap:Header&gt;
   &lt;soap:Body&gt;
Donde los &lt y &gt hacen referencia a < y > respectivamente, la pregunta es ¿cómo consigo que los caracteres de < y > pasen como son y no los coloque como &lt y &gt?

Etiquetas: basic, net, service, visual
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:36.