REALbasic & SOAP
Something I have been playing with recently is an IDE and language called REALbasic. This caught my attention as using REALbasic makes it incredibly easy to develop multi platform applications, however, it is not without limitations.
I must say the IDE it self is very impressive, clean and easy to use. The first application I’ve been using to test REALbasic on is one to connect to a SOAP API. REALbasic does come with it’s own SOAPMethod but a quick look at the language reference shows that you can only pass Strings when invoking methods. As the SOAP API I work with requires integers in almost every method I had to work around this limitation.
If you can’t use the built in SOAPMethod create your own. As SOAP is effectively XML communication you can build your own XML requests and interpret responses quite easily. All you need to do is work out the format of the XML requests and then send whatever requests you want over a HTTPSocket.
I found the easiest way of discovering the XML request format was to packet sniff a working call. I used Ethereal to monitor a SOAP request made in another application and grabbed the correct format from this. Now it was just a matter of passing this as a String to a HTTPSocket in REALbasic. You receive the response from your request in the HTTPSocket’s PageReceived event as "content".
From here you can read the content into an XMLDocument and then use XQL to search for the needed result. Overall I had to do things the long way round but it does work very well.
