After several weeks of playing with it, pouring over Apple’s somewhat cryptic documentation, and trying every combination of every flag and order or operation I could think of…I’m finally making SOAP requests with CFHTTPMessage instead of WSMethodInvocation.
I can now make the exact same requests (Ping, SearchListLoad, DataFormLoad) that I could before I started all of this…but I’m not using any Mac-only APIs. (It’s still OS X only, of course.)
So I consider that a victory. At some point in the near future, I will write a blog post about just how to make an HTTP post using CFHTTPMessage. I need to get this information into Google so no one else has to spend weeks figuring it out on their own.
But I’m just happy to have it working. I can now move on to the much easier and only slightly less-interesting task of implementing the rest of the web service methods I need.