I've seen other code using HTTP transfer that made use of
the ReadyState property of the XMLHTTP30 object... could I
use this somethow?
Any advice would be greatly appreciated... Has anyone else
done this yet? It would be easy with a .NET client, of
course, but I need to be supporting VB 6 clients for quite
some time to come.
Cheers,
Eric Nichols
___________________________________
Eric Nichols
Software Developer
IntelliChem, Inc.
20310 Empire Avenue, Suite A-102
Bend, Oregon 97701 USA
Phone: (541) 382-7043
Eric.N...@IntelliChem.com (email)
http://www.IntelliChem.com (web)
Finlay
"Eric Nichols" <eric.n...@intellichem.com> wrote in message
news:103801c14613$1ae20eb0$96e62ecf@tkmsftngxs03...
Here's an update on my question: I assume I can do what I
need by constructing the SOAP XML messages myself and
using an XMLHTTP30 object to send and receive the SOAP
messages. In this way I could use the asynchronous
capabilities of the XMLHTTP30 object. Am I correct if I
say that the SoapReader, SoapConnector, and SoapSerializer
do the same thing that an XMLHTTP30 object with a little
bit of XML DOM parsing can do? It seems like if I end up
using low-level SOAP methods, it is not much different
from dealing with the XML myself. Any comments on that?
I'm guessing that the WSDL capabilities of the SOAP
toolkit are the main functionality it provides, and then
the high-level API calls are also convenient as long as
they provide all the needed functionality for a particular
application.
So, if anyone thinks I'm on the wrong track by using
XMLHTTP30 instead of the SOAP toolkit, please let me
know. I'd like to use the SOAP toolkit somehow if I can
use it asynchronously.
Thanks in advance for any advice,
Eric Nichols
>.
>
Maybe this is what I was missing: I think I can make my
own Connector class instead of using the SoapConnector
object.. I will provide the input and output streams and
deal with the HTTP message sending and receiving myself.
But I can still use SoapReader and SoapSerializer to
read/build SOAP messages. Does that sounds like the best
way to go?
Any other advice before I get going in the wrong direction?
Cheers,
Eric Nichols
"Eric Nichols" <eric.n...@intellichem.com> wrote in message
news:378c01c146e4$d8e37e40$35ef2ecf@TKMSFTNGXA11...
--
This posting is provided "AS IS" with no warranties, and confers no rights.
You assume all risk for your use. © 2001 Microsoft Corporation. All rights
reserved
"Eric Nichols" <eric.n...@intellichem.com> wrote in message
news:378c01c146e4$d8e37e40$35ef2ecf@TKMSFTNGXA11...
I think I'd still run into a problem if I did two
synchronous calls to the web service, becuase I don't even
want to wait around for the results from any of those
calls if I'm not guaranteed that a response will be
ready. But I may be wrong.. I'm pretty new to this!
I envision something like the following.. any comments?
Thanks again to everyone for their help sorting this out! -
- Eric
dim Connector as MyHTTPConnector
dim Serializer as SoapSerializer
dim Reader as SoapReader
' Connect to the web service
Set Connector = New MyHTTPSoapConnector
Connector.Property("EndPointURL") = END_POINT_URL
Connector.Connect
'...
Connector.BeginMessage
Set Serializer = New SoapSerializer
Serializer.Init Connector.InputStream
'...
' Construct the SOAP message
' Send the message
Connector.EndMessage
...
' Start a timer, and poll periodically for the response:
' When timer goes off:
If Connector.XMLHTTP30ObjectInstance.ReadyState = 4 Then
' We now have a response, so retrieve the response
Set Reader = New SoapReader
Reader.Load Connector.OutputStream
' Process with the Reader...
'...
End If
Then, in the MyHTTPSoapConnector class, the actual call to
the web service would be something like:
' Note that the third argument of Open lets me specify
' async: True or False
XMLHTTP30Object.Open "POST", strURL, True
'...
XMLHTTP30Object.send docSoapRequest
--
This posting is provided "AS IS" with no warranties, and confers no rights.
You assume all risk for your use. © 2001 Microsoft Corporation. All rights
reserved
"Eric Nichols" <eric.n...@intellichem.com> wrote in message
news:3a3e01c14777$9fb40520$35ef2ecf@TKMSFTNGXA11...
Thanks again!
--
This posting is provided "AS IS" with no warranties, and confers no rights.
You assume all risk for your use. © 2001 Microsoft Corporation. All rights
reserved
"Eric Nichols" <eric.n...@intellichem.com> wrote in message
news:3e5a01c1483e$f28a80e0$35ef2ecf@TKMSFTNGXA11...
I'm also still working on implementing my own
SoapConnector class, but I'm stuck trying to figure out
how to use IStream in VB, and I can't tell why SOAP has
its own IStream that is different from the one in
objidl.idl. I can create a Stream using
CreateStreamOnHGlobal, but calling any of its methods
gives me errors about unsupported methods... I think this
is due to the difference between the real IStream and the
SOAP IStream. Hmmmm. Does anyone know where to find any
more information on IStream and SOAP IStream? I haven't
found what I need in the MSDN docs yet.
Thanks,
Eric