Calling Soap web services from Lazarus lazarus / 38-Networking and Web Programming ---------------------------------------------------------------------- motaz · 2014-03-23 08:53 I want to call Soap web services, is there any reliable method of doing that? I have searched the forum but I found old topics talking about SOAP services in Lazarus, I guess new things might happen during that time regarding web services. If no, is there any alternative, such as calling RESTful web services and what is your experiences regarding multi-tier development in FreePascal/Lazarus? notes: I need a cross-language solution, to enable calling web services written by other Languages, and to let FreePascal/Lazarus web services able to be called from other languages. ---------------------------------------------------------------------- BigChimp · 2014-03-23 09:09 SOAP isn't as trendy as it used to be. I only know of http://wiki.lazarus.freepascal.org/Web_Service_Toolkit RESTful has been fairly fashionable; please see e.g. http://wiki.lazarus.freepascal.org/fcl-web and you can look for the Brook framework, which is built on fcl-web... ---------------------------------------------------------------------- motaz · 2014-03-23 10:04 I've tried Web_Service_Toolkit this year or last year, but it has problem in compiling Lazarus, so that I'm afraid that it could corrupt my Lazarus installation. I know that SOAP has some issues, but unfortunately it is still the standard communication method in enterprise. For RESTfull, can I use Synaptic HTTP to call RESTFull web services? I don't want to install packages that needs compilation for Lazarus, because sometimes it work for specific version of Lazarus and prevents us from easily upgrade to the newest versions. ---------------------------------------------------------------------- BigChimp · 2014-03-23 10:26 As indicated on the wiki page, fcl-web/fpweb is included with FPC and Lazarus so the package you have in your Lazarus directory is tuned to your Lazarus version. I'm sure you can use Synapse to call RESTful services but I don't know of a ready-made implementation that does it for you. I wonder though why you are afraid of corrupting your Lazarus installation when compiling packages: - if it is a run time only package you can simply stop using it (and optionally remove it from the list of known packages) you can if it is - if it is a design time package you can mark it for uninstallation and rebuild Lazarus 2 alternatives: 1. use Web Service Toolkit etc but don't compile the package, just manually set include paths (will only work for non-design time packages, AFAIU) 2. write your own units... but basically then you have similar issues if you want to distribute your code etc ---------------------------------------------------------------------- motaz · 2014-03-23 10:52 Thanks BigChimp I might go to solution # 2, to write my own unit to translate JSON data structure that has been returned from RESTFull Web service. The web services itself is written in Java ---------------------------------------------------------------------- BeniBela · 2014-03-23 12:48 My Internet Tools can access every web service. There is nothing specially for soap, but for json, I have implemented this