Re: SOAP Library - More
Please re-post it. Sounds usefull. ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: SOAP Library - More
David- I've re-structured it quite a bit, I need to fix a few problems, then I'll release it back. I've made it a lot more general purpose and much easier to use. Great. I'm looking forward to it. And can definitely put it to use. -- Mark Wieder [EMAIL PROTECTED] ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: SOAP Library - More
Hi Mark, Thanks a lot for that, I managed to get it working in time for the demo! I've re-structured it quite a bit, I need to fix a few problems, then I'll release it back. I've made it a lot more general purpose and much easier to use. Thanks Again All the Best Dave ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: SOAP Library
David- One question though, I can't find any documentation on the SOAP.RPCRequest() function. When I click it in SOAPLib Stack, it just shows the name. Urk. You're right. I just posted a fixed version. This was taken from the old SOAP Stack, however there are now more parameters into RPCRequest() and I have no clue what to set them to. The new parameter is for https connections. If you don't need the extra authentication then just set them to empty. I tried the url you posted: it doesn't work for me, either. But then very few web services do. If there were anything like a standard for these things then it might be simpler. With your url I get as far as getting rejected with a bad SOAPAction verb. http://www.xmethods.net (An organization dedicated to promoting the development, deployment, and use of web services) has a good collection of web services you can try out, but most of them don't work or are no longer available (has nothing to do with whether they work in rev). -- Mark Wieder [EMAIL PROTECTED] ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: SOAP Library
Hi Mark, Thanks for that, it looks a lot cleaner. One question though, I can't find any documentation on the SOAP.RPCRequest() function. When I click it in SOAPLib Stack, it just shows the name. I have the following snippet that I am trying to get to work before moving onto more complex commands: --- -- -- mouseUp -- --- on mouseUp local myParams local myURL local myMethod local myNameSpace local mySoapAction local mySoapResponse local mySOAPData put empty into myParams put SOAP.AddParam(myParams,UserName,Danny,string) into mySOAPData put http://www.genxdev.com/ws/UserService.asmx?wsdl; into myURL put DoesUserExist into myMethod put http://dykyh.com/ws; into myNameSpace put http://dykyh.com/ws/DoesUserExist; into mySoapAction put SOAP.RPCRequest (myURL,myMethod,myNameSpace,myParams,mySoapAction) into mySoapResponse put mySoapResponse into field 1 end mouseUp This was taken from the old SOAP Stack, however there are now more parameters into RPCRequest() and I have no clue what to set them to. Thanks a lot All the Best Dave On 5 Oct 2007, at 19:06, Mark Wieder wrote: Dave- I've put my updated version of the stack on revOnline as libSOAP (in user space mwieder). There are still some things that won't work from the original, as I don't really understand what was intended for these handlers, and they're noted as such in the stack script. The others are fully functional and I use them for web services work, even over an https connection. -- Mark Wieder [EMAIL PROTECTED] ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: SOAP Library - More
Hi Again, I'm really confused on how this SOAP library has to be setup. I've been trying to make sense of it by stepping through the code but since I'm not sure what it is supposed to work, I'm not having an awful lot of luck! For instance, this function: -- SOAP.RPCRequest -- FUNCTION SOAP.RPCRequest pUrl, pMethod, pNamespace, pParams, pSoapAction, pHeader, pValue, pType local tHeaders local tSOAPEnvelope local tMethod local tMethodTag put the uSOAPEnvelope of me into tSOAPEnvelope put kMethodHeader : pMethod into tMethod put tMethod xmlns: kMethodHeader = quote pNamespace quote into tMethodTag replace $METHOD WITH tMethodTag in tSOAPEnvelope replace /$METHOD WITH / tMethod in tSOAPEnvelope replace $PARAMS/ WITH pParams in tSOAPEnvelope replace $HEADER WITH pHeader in tSOAPEnvelope return _SOAP.Post(tSOAPEnvelope, pUrl, pSOAPAction) END SOAP.RPCRequest What should uSOAPEnvelope of me be set to? In my copy of the stack, it's empty. I'm trying to get a demo/proof of concept together and a major area is talking to the Server which uses Web Services. At the moment the App is coded is RealBasic. I have to add a lot more functionality to it and have suggested that the job is done in RunRev, however before committing, I need to show the basic server comms working. Thanks a lot for any help All the Best Dave Hi Mark, Thanks for that, it looks a lot cleaner. One question though, I can't find any documentation on the SOAP.RPCRequest() function. When I click it in SOAPLib Stack, it just shows the name. I have the following snippet that I am trying to get to work before moving onto more complex commands: --- -- -- mouseUp -- --- on mouseUp local myParams local myURL local myMethod local myNameSpace local mySoapAction local mySoapResponse local mySOAPData put empty into myParams put SOAP.AddParam(myParams,UserName,Danny,string) into mySOAPData put http://www.genxdev.com/ws/UserService.asmx?wsdl; into myURL put DoesUserExist into myMethod put http://dykyh.com/ws; into myNameSpace put http://dykyh.com/ws/DoesUserExist; into mySoapAction put SOAP.RPCRequest (myURL,myMethod,myNameSpace,myParams,mySoapAction) into mySoapResponse put mySoapResponse into field 1 end mouseUp This was taken from the old SOAP Stack, however there are now more parameters into RPCRequest() and I have no clue what to set them to. Thanks a lot All the Best Dave On 5 Oct 2007, at 19:06, Mark Wieder wrote: Dave- I've put my updated version of the stack on revOnline as libSOAP (in user space mwieder). There are still some things that won't work from the original, as I don't really understand what was intended for these handlers, and they're noted as such in the stack script. The others are fully functional and I use them for web services work, even over an https connection. -- Mark Wieder [EMAIL PROTECTED] ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: SOAP Library - More
David- Well, the library stack wasn't really written to be released into the wild like that. I do what Mark Smith does: put templates into custom properties and then retrieve them and replace parameters. constant kWSURL= https://webservice.com/ws/activations.asmx; constant kWSNamespace= http://authority.com/namespace; ON PerformAction pAction local tPartnerKey local tRegCode local tParams local tHeader put empty into field fldResults put empty into field fldResponse put empty into field fldSOAP put field fldPartnerKey into tPartnerKey put field fldRegCode into tRegCode put PackageParameters(Key, tPartnerKey, string) into tHeader put PackageParameters(AuthenticationHeader, tHeader, , kWSNamespace) into tHeader put PackageParameters(ActivationCode, tRegCode, string, kWSNamespace) into tParams TRY put SOAP.RPCRequest(kWSURL, \ pAction, \ kWSNamespace, \ tParams, \ http://webservice.com/ws/; pAction, \ tHeader \ ) into field fldResponse put SOAP.Response() into field fldResults put SOAP.Envelope() into field fldSOAP CATCH e -- this is here for timeouts answer e END TRY END PerformAction where the custom property uSOAPEnvelope of the library stack ($HEADER, $METHOD, and $PARAMS will be replaced in the call to SOAP.RPCRequest by the appropriate parameters) is: ?xml version=1.0 encoding=UTF-8? SOAP-ENV:Envelope xmlns:xsd=http://www.w3.org/2001/XMLSchema; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; SOAP-ENV:encodingStyle=http://schemas.xmlsoap.org/soap/encoding/; xmlns:SOAP-ENC=http://schemas.xmlsoap.org/soap/encoding/; xmlns:SOAP-ENV=http://schemas.xmlsoap.org/soap/envelope/; SOAP-ENV:Header $HEADER /SOAP-ENV:Header SOAP-ENV:Body $METHOD$PARAMS//$METHOD /SOAP-ENV:Body /SOAP-ENV:Envelope (...and obviously you'll need to know the proper parameters from the wsdl...) Hope this helps. For me the hardest part was figuring out the proper authentication header format, and I only got that right by ngrepping the network traffic. -- Mark Wieder [EMAIL PROTECTED] ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: SOAP Library
In fact, for the main SOAP service that I use, I made a library that I have a few apps using. It's also an https situation, and I had problems with frequent timeouts (see bug 3639), so I use curl for the actual http side of it, so using the SOAP library wouldn't have been an option anyway, I think. It might be an interesting challenge to get a full WSDL based library together, but I don't think I'll be trying it just at the moment! Best, Mark On 7 Oct 2007, at 05:13, Mark Wieder wrote: Mark- Friday, October 5, 2007, 4:57:22 PM, you wrote: I work with a couple of SOAP services, and frankly, I'm with Dave in not really seeing the point of it. It seems to be a sledge-hammer to crack a nut. The approach I take is to make template requests with placeholders, store them in custom properties, copy them into variables and fill them in and post them as necessary. I then have handlers to deal with each type of response. It's quite a lot of work for a SOAP service with a lot of different methods, but you only have to address the particular methods you're interested in, and it works well. It doesn't produce a generalised SOAP library though. I just posted a response to Dave before reading this one. Web services seem to be one of those Web 1.5 things that never really caught critical mass. And I do the same thing you do: storing templates in custom properties, then replacing key parameters before calling the library routines. -- -Mark Wieder [EMAIL PROTECTED] ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: SOAP Library
On 5 Oct 2007, at 19:06, Mark Wieder wrote: I've put my updated version of the stack on revOnline as libSOAP (in user space mwieder). There are still some things that won't work from the original, as I don't really understand what was intended for these handlers, and they're noted as such in the stack script. Many (all??) of the URLs used in the samples for the original are no longer valid. One problem with the original stack is that it was written when SOAP was at an earlier stage. It was used much in the same way as XML-RPC, and the document method if passing data was just becoming more common. WSDL was also less-developed, and Rev's own XML library was only introuced while the stack was being developed. (An earlier version used some hand-coded XML parsing.) You might want to point out your revisions to RunRev. I think there is a case for consigning the unsupported stack to the bonfire. :-) My inability to get SOAP, is that I still don't see how it offers great advantages over exchanging XML data with conventional http POST. (But I know I'm guilty of not trying hard enough to understand.) Cheers Dave ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: SOAP Library
Dave- Saturday, October 6, 2007, 2:02:37 AM, you wrote: You might want to point out your revisions to RunRev. I think there is a case for consigning the unsupported stack to the bonfire. :-) I'm not quite sure it's up to snuff the way it is. I wrote it by modifying your original when it didn't work for me and I needed to work with our existing web services. I wasn't at all sure it would work over an https connection, but the authentication process went smoothly. My inability to get SOAP, is that I still don't see how it offers great advantages over exchanging XML data with conventional http POST. (But I know I'm guilty of not trying hard enough to understand.) I think I agree with you there. SOAP, of course, allows you to provide callable functions over a single port, with parameters passed as xml data, but there are other ways of accomplishing the same goals without having to go the SOAP route. In my case, as I said, I needed to work with our existing web services, so a SOAP library fit the bill nicely. My real problem with web services, though, is that they seem to disappear after about six months or so. If you control both ends of things (you're publishing the web services as well as consuming them) then everything's ok. If you're relying on someone else's web services then they might suddenly not be there some day. It would appear that other folks try out web services and then either can't figure them out or discover that it doesn't help them make money and they go off and try something else. -- -Mark Wieder [EMAIL PROTECTED] ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: SOAP Library
Mark- Friday, October 5, 2007, 4:57:22 PM, you wrote: I work with a couple of SOAP services, and frankly, I'm with Dave in not really seeing the point of it. It seems to be a sledge-hammer to crack a nut. The approach I take is to make template requests with placeholders, store them in custom properties, copy them into variables and fill them in and post them as necessary. I then have handlers to deal with each type of response. It's quite a lot of work for a SOAP service with a lot of different methods, but you only have to address the particular methods you're interested in, and it works well. It doesn't produce a generalised SOAP library though. I just posted a response to Dave before reading this one. Web services seem to be one of those Web 1.5 things that never really caught critical mass. And I do the same thing you do: storing templates in custom properties, then replacing key parameters before calling the library routines. -- -Mark Wieder [EMAIL PROTECTED] ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: SOAP Library
On 5 Oct 2007, at 15:27, David Burgun wrote: Causes a problems since pMethod is not defined in this function. But it's not used in the function in any meaningful way, so I don't think it will cause a problem. Does anyone know why this is like this? Careless programming I think (I wrote it.). Probably copying another function (revSoapRpcRequest perhaps) and then forgetting to delete this portion. Is there a more up to date SOAP library? Not that I know of. Although hopefully someone will chime in with something. I had to give up with SOAP when I realised I didn't really understand the point of it. Funnily enough, I had to deal with SOAP again recently, although not with Rev. I still don't get it. :-) Cheers Dave ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: SOAP Library
Dave- I've put my updated version of the stack on revOnline as libSOAP (in user space mwieder). There are still some things that won't work from the original, as I don't really understand what was intended for these handlers, and they're noted as such in the stack script. The others are fully functional and I use them for web services work, even over an https connection. -- Mark Wieder [EMAIL PROTECTED] ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
Re: SOAP Library
I work with a couple of SOAP services, and frankly, I'm with Dave in not really seeing the point of it. It seems to be a sledge-hammer to crack a nut. The approach I take is to make template requests with placeholders, store them in custom properties, copy them into variables and fill them in and post them as necessary. I then have handlers to deal with each type of response. It's quite a lot of work for a SOAP service with a lot of different methods, but you only have to address the particular methods you're interested in, and it works well. It doesn't produce a generalised SOAP library though. Best, Mark On 5 Oct 2007, at 15:27, David Burgun wrote: Hi, I am interested in using SOAP to communicate between a client and server. I downloaded Unsupported Stacks from the RunRev web site and found a file called SOAP_toolbox.rev which seems to do what I want. However when I came to use the functions in the stack, I found a few problems, for instance: function revSoapComplexRequest pUrl, pBody, pSoapAction put empty into lcSoapResponse ##clear response data put Content-Type: text/xml into tHeaders put cr SOAPAction: quote pSoapAction quote after tHeaders put the cSoapEnvelope of me into tSOAPEnvelope put pMethod into tMethod -- * put m: before tMethod put tMethod xmlns:m= quote pNamespace quote into tMethodTag replace METHODPARAMS//METHOD with pBody in tSOAPEnvelope set the httpHeaders to tHeaders post tSOAPEnvelope to url pUrl put it into lcSoapResponse return the result end revSoapComplexRequest Please see the line marked with ***, the statement: put pMethod into tMethod -- * Causes a problems since pMethod is not defined in this function. Does anyone know why this is like this? Is there a more up to date SOAP library? Is there another library that is more up to date? Any help or suggestions greatly appreciated. All the Best Dave ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution ___ use-revolution mailing list use-revolution@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution