How IntraWeb Works

How IntraWeb Works

How IntraWeb Works

Basically speaking, IntraWeb is a framework for Web Development in Delphi.

IntraWeb allows the Delphi Developers to create applications in a true RAD manner by dragging and dropping components on an IW form, defining events and setting properties in a way that is similar to popular RAD environments like Delphi or Microsoft Visual Studio.

IntraWeb is designed to build any sort of web-based application, whether it is a simple data entry form, a poll, or a complex application where clients have to be "logged in" for an extended period of time.

IntraWeb does the hard-work for the Delphi Developer, generating all the HTML/JavaScript/CSS output for you and still enables you to extend your applications implementing custom client-side features or using 3rd-party JavaScript libraries.

IntraWeb works much like a normal executable application, with the exception that the user interface is a web browser instead of a window. After placing the application on a web server, a user can run an instance of the application by using a URL to start a session. The user’s information will be tracked by the instance of the application in use, thus preventing data loss or accidental intermingling with another user’s data. For each user, new session information is created and tracked automatically and is transparent to the developer. The overhead is low and the capacity of an IntraWeb application is similar to that of other web solutions such as ISAPI, CGI, or ASP.NET.

Lets understand the basic process of user interaction with an IntraWeb application:

  • Your IntraWeb application is running on your server (it can be a ISAPI DLL or a SA Server, see IntraWeb Application Types)
  • Your server must have an IP which is accessible by your user through your network or the internet. You can aslo have a domain name that translastes/points to your server.
  • The user types the IP address/Port of your web application on the browser (like http://192.168.1.100:8888/$/start) or simply the URL of your website
  • The IntraWeb application receives the request, process it, renders the IW form and sends it back to browser (basically a data package containing information (HTML/JavaScript/CSS) that tells the browser how to render your IW form.
  • The browser receives the data package, decodes it and renders the IW form to the user.
  • The user interacts with the page just rendered for him and clicks on button, for example.
  • The browser sends the button click information to the IntraWeb application running in your server and the process is repeated again.

What differentiates IntraWeb from other web technologies, like PHP, Web Broker and ASP.NET

In simple words: IntraWeb is statefull. It means that the developer can keep all the relevant user information active in the server while the user session is active. For example, if your user is navigating in a Dataset, you can keep the Dataset active, without the need to close/open the Dataset at each user interaction and also without the need to worry about the correct Dataset position when the user scrolls on the Dataset records, as the Dataset is already active, in the same way as a Desktop application, with the difference that all the process occurs on server side.