Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   .NET (https://www.clubdelphi.com/foros/forumdisplay.php?f=17)
-   -   llamar un Delphi web services desde ASP (https://www.clubdelphi.com/foros/showthread.php?t=59871)

SpyO_O 11-09-2008 15:30:21

llamar un Delphi web services desde ASP
 
Hola a todos, segui un exelente tutorial acerca de como crear un web service en delphi, http://eliseogn.wordpress.com/2008/08/02/6/ funciona perfecto.
Ahora mi pregunta es, ¿Como puedo llamar a estos Web services desde ASP?

Gracias

egostar 11-09-2008 15:36:40

Cita:

Empezado por SpyO_O (Mensaje 313461)
Hola a todos, segui un exelente tutorial acerca de como crear un web service en delphi, http://eliseogn.wordpress.com/2008/08/02/6/ funciona perfecto.
Ahora mi pregunta es, ¿Como puedo llamar a estos Web services desde ASP?

Gracias

Hola

Puedes verlo desde el blog de nuestro amigo jhonny, gracias por tomarte el tiempo de leer mi blog y por supuesto el comentario que dejaste ;)

http://jhonny.clubdelphi.com/?p=46

Salud OS

SpyO_O 11-09-2008 15:52:55

llamar un Delphi web services desde ASP
 
Gracias por responder,
Olvide aclarar en mi primer mensaje que necesitaba hacerlo en ASP clasico.
O bien que el codigo pueda modificarlo manualmente sin depender de algun RAD, mi intencion es incluirlo en un sitio web que ya esta en ASP.
gracias.

__hector 25-09-2008 15:34:09

Si vas a usar ASP clasico tendrias que escribir una libreria en VB6 en la que armes el mensaje SOAP y lo envies usando un socket HTTP al servidor, recibir la respuesta (xml) y consumir el resultado.

En asp clasico no existen las clases 'proxy' que hacen el binding automatico entre la respuesta al mensaje SOAP y algun objeto o estructura, ni tampoco la facilidad de generar los stubs para llamar a los metodos del webservice automaticamente.

Claro esta, aunque es algo un poco mas incomodo de hacer, no es imposible. Busca en google como enviar requests soap con vb6 y seguro encuentras algun buen ejemplo.

SpyO_O 25-09-2008 15:46:44

llamar un Delphi web services desde ASP
 
Gracias por responder,
te comento que tengo resuleto el tema y no fue nada extraña la resolucion, solo enviando un comando post al web services, me retorno la respuesta correcta.


abajo el codigo ASP que me dio la solucion:
vXML es la variable donde voy armando el POST.

Para ello copie la forma que hacia el envio del cliente escrito en delphi al mismo web services y modifque para que se ajuste con parametros variables:


Código:

.
.
.
.
      vURL="http://localhost/ws/wstrip.dll"
        vXML="<?xml version=""1.0""?>"& vbCrLf
        vXML=vXML & "<SOAP-ENV:Envelope xmlns:SOAP-ENV=""http://schemas.xmlsoap.org/soap/envelope/""" & vbCrLf
        vXML=vXML & "xmlns:xsd=""http://www.w3.org/2001/XMLSchema""" & vbCrLf
        vXML=vXML & "xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance""" & vbCrLf
        vXML=vXML & "xmlns:SOAP-ENC=""http://schemas.xmlsoap.org/soap/encoding/"">" & vbCrLf
        vXML=vXML & "<SOAP-ENV:Body SOAP-ENV:encodingStyle=""http://schemas.xmlsoap.org/soap/encoding/"">" & vbCrLf
        vXML=vXML & "<NS1:GetTimeTrip xmlns:NS1=""urn:wsTimeTripIntf-IwsTimeTrip"">" & vbCrLf
        vXML=vXML & "<vDep xsi:type=""xsd:string"">"& vDepA &"</vDep>" & vbCrLf
        vXML=vXML & "<vArr xsi:type=""xsd:string"">"& vArrA &"</vArr>" & vbCrLf
        vXML=vXML & "<vH xsi:type=""xsd:string"">"& vH &"</vH>" & vbCrLf
        vXML=vXML & "<vM xsi:type=""xsd:string"">"& vM &"</vM>" & vbCrLf
        vXML=vXML & "</NS1:GetTimeTrip></SOAP-ENV:Body>" & vbCrLf
        vXML=vXML & "</SOAP-ENV:Envelope>" & vbCrLf



        Set objInputXMLDoc = Server.CreateObject("Microsoft.XMLDOM")

        objInputXMLDoc.loadXML vXML

        Set objXMLHTTP = Server.CreateObject("MSXML2.ServerXMLHTTP")
        vURL=vURL & "/soap/IwsTimeTrip"
        objXMLHTTP.open "post", vURL, false
        objXMLHTTP.setRequestHeader "Content-Type", "text/xml"
        objXMLHTTP.setRequestHeader "soapAction", "urn:wsTimeTripIntf-IwsTimeTrip#GetTimeTrip"
        objXMLHTTP.send objInputXMLDoc

        response.Write  objXMLHTTP.responseText

Simple no?
saludos


La franja horaria es GMT +2. Ahora son las 23:29:46.

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