servicio services libreria jax hacer funciona ejemplo cómo crear conectarse con como web-services soap lotus-notes lotus-domino lotusscript

web services - services - ¿Cómo puedo llamar a un servicio web SOAP 1.2 desde un agente de LotusScript?



libreria soap (1)

Estoy usando un Lotus Domino 9 en un servidor de Windows

Debo llamar a un servicio web de Soap 1.2 que ya no se mantiene

Los consumidores de los servicios web de Lotus solo aceptan los servicios web de Soap 1.1 . Por lo tanto, no puedo usar esta característica para vincular mis servicios web.

¿Es posible llamar a un servicio web de Soap 1.2 desde mi agente de LotusScript y, en caso afirmativo, cuáles son los pasos necesarios?


Finalmente encontré una solución usando el objeto XMLHTTP

Sub Initialize Dim xmlhttp As Variant dim DOMDocument As Variant Dim soapEnvelope As String Dim webService As String dim username As String Dim password As String Dim strxml As String Set xmlhttp = CreateObject("Msxml2.XMLHTTP") Set DOMDocument = CreateObject("MSXML2.DOMDocument") webService = "http://server/path/service" username = "user1" password = "123456" soapEnvelope ={<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:doc="http://checkYourOwnEnvelopeDetails.com">} soapEnvelope =soapEnvelope & {<soap:Header/>} soapEnvelope =soapEnvelope & {<soap:Body>} '' ...use SoapUI to know the exact envelop structure soapEnvelope =soapEnvelope & {</soap:Body>} soapEnvelope =soapEnvelope & {</soap:Envelope>} DOMDocument.loadXML (soapEnvelope) Call xmlhttp.open("POST", webService, False,username,password) Call xmlhttp.setRequestHeader("Content-Type", "application/soap+xml;charset=UTF-8") Call xmlhttp.setRequestHeader("Username", username) Call xmlhttp.setRequestHeader("Password", password) '' again, use SoapUI to discover the exact name of the action Call xmlhttp.setRequestHeader("SOAPAction", "urn:getListAll") Call xmlhttp.send(DOMDocument.xml) strxml = xmlhttp.responseText ... End Sub