Retorno de un método de un webservices como XmlDocument

11/12/2006 - 12:35 por Jordi Julià | Informe spam
Hola a todos,

Defini un servicio web con VB2003 de la siguiente manera:
<System.Web.Services.WebService(Namespace:="http://tecnicsoft.com/webservices/")>
_

Public Class Central_Reservas

Inherits System.Web.Services.WebService

<WebMethod(), _

SoapHeader("CabeceraTransaccion", Direction:=SoapHeaderDirection.InOut), _

SoapHeader("unknownHeaders")> _

Public Function Get_Disponibilidad_Habitaciones(ByVal Filtros_Seleccion As
XmlDocument) As XmlDocument

End Function

End Class


Lo ejecuto de esta manera:
Dim CabeceraSoap As New Central_Reservas.CabeceraSOAP

Dim WS As New Central_Reservas.Central_Reservas

Dim Filtros_Seleccion As XmlDocument

Dim Respuesta_Disponibilidad As XmlDocument

Respuesta_Disponibilidad =
WS.Get_Disponibilidad_Habitaciones(Filtros_Seleccion)


¿ cómo es que me considera el retorno de la función como XmlElement y me da
un error de conversión ?
si lo convierto a VB2005 el problema persiste

Saludos
Jordi
 

Leer las respuestas

#1 Alejandro Mezcua
11/12/2006 - 13:02 | Informe spam
Hola Jordi.

Ten en cuenta que lo que devuelves a través de un método web es sólo parte
de un documento XML, en concreto es sólo la parte Body del mensaje SOAP,
siendo el mensaje completo un documento XML bien formado, que el sistema
se encarga de interpretar por tí, quitando las cabeceras SOAP y demás.

De esta forma, el contenido del mensaje SOAP sólo puede ser parte del documento
XML completo, o sea, XmlElement, con el contenido que sea.

Lo puedes ver muy claro si usas alguna herramienta que te permita ver el
tráfico HTTP que se produce en la comunicación de tu cliente con tu servidor
Web. Unas utilidades gratuitas que están bastante bien las tienes en www.pocketsoap.com.

Un saludo,

Alejandro Mezcua
MVP Device Application Development
http://www.byteabyte.net/

Hola a todos,

Defini un servicio web con VB2003 de la siguiente manera:
<System.Web.Services.WebService(Namespace:="http://tecnicsoft.com/webs
ervices/")> _

Public Class Central_Reservas

Inherits System.Web.Services.WebService

<WebMethod(), _

SoapHeader("CabeceraTransaccion",
Direction:=SoapHeaderDirection.InOut), _

SoapHeader("unknownHeaders")> _

Public Function Get_Disponibilidad_Habitaciones(ByVal
Filtros_Seleccion As XmlDocument) As XmlDocument

End Function

End Class

Lo ejecuto de esta manera:
Dim CabeceraSoap As New Central_Reservas.CabeceraSOAP
Dim WS As New Central_Reservas.Central_Reservas

Dim Filtros_Seleccion As XmlDocument

Dim Respuesta_Disponibilidad As XmlDocument

Respuesta_Disponibilidad > WS.Get_Disponibilidad_Habitaciones(Filtros_Seleccion)

¿ cómo es que me considera el retorno de la función como XmlElement y
me da
un error de conversión ?
si lo convierto a VB2005 el problema persiste
Saludos
Jord

Preguntas similares