Lazarus web application, how choose lazarus / 38-Networking and Web Programming ---------------------------------------------------------------------- ouiouioui · 2015-06-16 16:01 Hello, I use Lazarus for a while but I work more on Delphi, I am doing a web server that allows the user to view information from the server and client side to ring when a new message arrives. My application checks through sensors if doors are opened, So if a door is opened I want to send a beep or sound and a message to those who are connected. I looked fcl-web, Web Service Toolkit, Raudus, Brook framework, ... and others they there are a lot so hard to choose. So I come to you for advice which solution will be the most suitable for my needs according to you? I thank you in advance. ---------------------------------------------------------------------- Leledumbo · 2015-06-16 22:23 All of them are OK, but I don't suggest WST. AFAIK it only supports SOAP, which is a heavyweight protocol. Use simple REST-based unstructured JSON instead, which you can do with other frameworks. Raudus is more RAD alike, so it's a bit overkill if you don't need to provide JS-based UI as a response. ---------------------------------------------------------------------- ouiouioui · 2015-06-18 11:47 Thanks, I have read more about Raudus and it don't give source so i don't use it. and Kitto you now? https://github.com/nandod/kitto/wiki/KittoGettingStarted i try Brook framework i think ---------------------------------------------------------------------- Leledumbo · 2015-06-18 11:54 Quote from: ouiouioui on June 18, 2015, 01:47:21 pmand Kitto you now? https://github.com/nandod/kitto/wiki/KittoGettingStarted If it's not designed for Free Pascal, I won't know. It's Delphi only AFAICS, just like uniGUI, despite ExtPascal works on Free Pascal, too. ---------------------------------------------------------------------- ouiouioui · 2015-06-18 13:31 you have rights, i'l try ExtPascal it seem great. ---------------------------------------------------------------------- Leledumbo · 2015-06-18 20:15 Quote from: ouiouioui on June 18, 2015, 03:31:34 pmyou have rights, i'l try ExtPascal it seem great. With the last commit set to last year, it's a dead project. I wouldn't use it if I were you. ---------------------------------------------------------------------- chrnobel · 2015-06-19 15:07 Quote from: Leledumbo on June 18, 2015, 10:15:47 pmWith the last commit set to last year, it's a dead project. I wouldn't use it if I were you. My car is 17 years old, but is still in perfect shape  Even though a project seems dead, it can still be very usefull - I am still using pwu 1.6 for my projects, and it is extremely stable and reliable. /Christian ---------------------------------------------------------------------- Leledumbo · 2015-06-19 16:11 Quote from: chrnobel on June 19, 2015, 05:07:01 pmQuote from: Leledumbo on June 18, 2015, 10:15:47 pmWith the last commit set to last year, it's a dead project. I wouldn't use it if I were you. My car is 17 years old, but is still in perfect shape  Even though a project seems dead, it can still be very usefull - I am still using pwu 1.6 for my projects, and it is extremely stable and reliable. /Christian Wow, pwu. Long time no hear ---------------------------------------------------------------------- valdir.marcos · 2015-06-19 17:03 "There's a pascal based CGI framework used to be called PSP (Pascal Server Page) but the authors had change the name to PWU (Pascal Web Utility?). Before I know PWU is existed, I use PHP, but now, I choose PWU. If you prefer OOP approach, you can use O-PSP (object PSP) another branch of the (default) procedural PSP." http://lists.freepascal.org/fpc-pascal/2007-March/013517.html http://sourceforge.net/projects/pascal-webdev/files/?source=navbar http://free-pascal-general.1045716.n5.nabble.com/how-to-compile-PWU- project-from-command-line-td2815159.html Be careful with projects not frequently updated  on SourceForge: http://linux.softpedia.com/blog/Wine-Will-Migrate-Away-from- SourceForge-483823.shtml http://news.softpedia.com/news/GIMP-Devs-Accuse-Sourceforge-of- Locking-Them-Out-and-Distribuiting-Adware-482570.shtml ---------------------------------------------------------------------- motaz · 2015-06-20 06:12 Why not to have a look to FreeSpider, it is simple to deploy as CGI web application http://code.sd/products/freespider/ ---------------------------------------------------------------------- ouiouioui · 2015-06-24 09:24 Thanks all, i'l take a look on this project. i'm not good in web programming with lazarus, and for a simple program i don't know what is better, standalone server with indy, cgi, apache module. Standalone is more easy to debug, i can run directly else if i must deploy manually for test it's a lost of time, ok we can automate it but i'm beginner with that and i have not time for learn all i want so what is the more easy to use for a beginner? For now i don't see a framework working standalone on linux, ExtPascal can do it on Windows as i see. I don' t explain very well sorry for my English spelling. A framework for a linux indy http server. Thanks. ---------------------------------------------------------------------- Leledumbo · 2015-06-24 09:32 Quote from: ouiouioui on June 24, 2015, 11:24:24 amFor now i don't see a framework working standalone on linux Something is wrong with the way you analyze the frameworks. fpWeb and Brook runs standalone on any supported platforms, because their base, fcl-web, works so. ---------------------------------------------------------------------- JD · 2015-06-27 11:10 Quote from: ouiouioui on June 24, 2015, 11:24:24 amFor now i don't see a framework working standalone on linux, ExtPascal can do it on Windows as i see. I don' t explain very well sorry for my English spelling. A framework for a linux indy http server. Thanks. If it is an Indy HTTP Server on Linux you are after, why don't you look at some of the many examples created using Delphi (Google search) & port them to Lazarus? You'll learn a lot from that, I can assure you. JD ---------------------------------------------------------------------- inoussa · 2015-06-27 12:14 Quote from: Leledumbo on June 17, 2015, 12:23:41 amAll of them are OK, but I don't suggest WST. AFAIK it only supports SOAP, which is a heavyweight protocol. Use simple REST-based unstructured JSON instead, which you can do with other frameworks. (Disclaimer: WST's author here ) WST does support JSON-RPC, XML-RPC, a custom binary serializer and SOAP. Why should one choose an "unstructured" over a "structured" mechanism ?  REST style services have their use, so does structured web services. Using WSDL[1] you have auto documented definitions : clearly expressed data structures well defined services definitions tools are available to author WSDL files, you do not have to hand write them tools are available to automatically translate WSDL files to (understandable) pascal sources files  Using WST : You have a (GUI) type library editor[2] to author WSDL files and generated corresponding pascal source files the same editor can be used to import an existing filea command line WSDL parser to generated pascal sourcesthe type library editor is available as a Lazarus IDE expert  With WST you do not have to hand write or translate WSDL files, there are tools for that. Try by yourself, then decide, knowingly. [1]WSDL: Web Service Description Language [2] WST's Type Library Editor : http://wiki.lazarus.freepascal.org/File:Wst_type_lib_edtr.PNG Best regards. ---------------------------------------------------------------------- Leledumbo · 2015-06-27 17:33 Quote from: inoussa on June 27, 2015, 02:14:45 pm(Disclaimer: WST's author here ) WST does support JSON-RPC, XML-RPC, a custom binary serializer and SOAP. Oh, nice to know. What's that custom binary serializer and how would the other end understand how to (un)serialize according to the protocol? ---------------------------------------------------------------------- inoussa · 2015-06-29 10:38 The custom binary serialization format is a time/size optimized format specific to WST, I mean when the client(s) and server(s) are all WST- based. As it is binary stored, no textual parsing is done like JSON or XML. ---------------------------------------------------------------------- Leledumbo · 2015-06-29 18:00 Quote from: inoussa on June 29, 2015, 12:38:42 pmThe custom binary serialization format is a time/size optimized format specific to WST, I mean when the client(s) and server(s) are all WST-based. As it is binary stored, no textual parsing is done like JSON or XML. Ah, I see. So it's for all-WST-client-server application.