Fundamentally, the web is driven by its main protocol, HTTP (Hyper Text Transfer Protocol), which imposes certain constraints. Under HTTP, a client sends a request to a server that replies with a response. A crucial feature of HTTP is that it is stateless; that is, after processing a request, no record of that request is kept. Of course, state information can be maintained via some other mechanism; for example, the servlet API has methods for keeping state that can be used with MSPSessionVariable.
This mechanism is limited in a number of key ways. It is relatively expensive since it requires launching a new CGI process for every request, which can cause scalability problems. One solution is to make the actual CGI script a lightweight process that communicates with its own server; many web solutions actually do this. Of course this requires nontrivial development and can result in something that is more complicated to use than other dynamic solutions.
Active Server Pages (ASPs) are a scripting language for dynamic web content, developed by Microsoft. They are quite common and powerful. At present, ASPs are not supported, but this will be continually reviewed.
Perl is often used as a scripting language either with CGI or a server plug-in. Technologies exist to link Mathematica to Perl, but these are not as developed as is the technology for linking to Java.
Java Servlet technology provides a high-level API (programming interface) for working with HTTP requests. There are many ways that web servers can be enhanced to add a servlet engine. Solutions exist for all web servers and run on all major platforms.
A form element may contain input elements, which add various buttons and input fields. Here is an example of a form with two input tags: the first allows text to be entered, and the second causes the form to be submitted.
When the form is activated by the submit input tag, the browser makes a request to the URL referred to by the action attribute. It sends the name and value pairs from all of the input tags in the form. This is the most basic way to activate HTML.
The major browsers, Google Chrome, Apple Safari, Mozilla Firefox, and Internet Explorer, continue to develop new interactive technologies at a rapid pace. It may be advantageous for webMathematica users to consider new technologies as they become available.