Types of Web Server Applications
Whether you use WebBroker, Web Services, DataSnap, or WebSnap (deprecated) you can create four standard types of web server applications.
Tip: DataSnap applications do not support CGI.
Stand-alone VCL application
A stand-alone VCL SOAP application is a web server that displays a VCL form. It supports HTTP using an Indy HTTP server component.
Stand-alone console application
A stand-alone console SOAP application is a web server that has a text-only user interface. It supports HTTP using an Indy HTTP server component.
An ISAPI Web server application is a DLL that is loaded by the Web server. Client request information is passed to the DLL as a structure and evaluated by the ISAPI application, which creates appropriate request and response objects. Each request message is automatically handled in a separate execution thread.
A CGI stand-alone Web server application is a console application that receives client request information on standard input and passes the results back to the server on standard output. This data is evaluated by the CGI application, which creates appropriate request and response objects. Each request message is handled by a separate instance of the application.
Converting Web server application target types
One powerful feature of WebBroker and WebSnap is that they offer several different target server types. The IDE allows you to easily convert from one target type to another.
Because Web Broker and WebSnap have slightly different design philosophies, you must use a different conversion method for each architecture.
To convert your Web Broker application target type
- Right-click the Web module and choose Add To Repository.
- In the Add To Repository dialog box, give your Web module a title, text description, Repository page (probably Data Modules), author name, and icon.
- Choose OK to save your Web module as a template.
- From the main menu, choose File > New and select Web Server Application. In the New Web Server Application dialog box, choose the appropriate target type.
- Delete the automatically generated Web module.
- From the main menu, choose File > New and select the template you saved in step 3. This will be on the page you specified in step 2.
To convert a WebSnap application's target type
- Open your project in the IDE.
- Display the Project Manager using View > Project Manager . Expand your project so all of its units are visible.
- In the Project Manager, click the New button to create a new Web server application project. Double-click the WebSnap Application item in the WebSnap tab. Select the appropriate options for your project, including the server type you want to use, then click OK.
- Expand the new project in the Project Manager. Select any files appearing there and delete them.
- One at a time, select each file in your project (except for the form file in a Web App Debugger project) and drag it to the new project. When a dialog appears asking if you want to add that file to your new project, click Yes.