Web Applications with the S-PLUS Analytic Server

Generating Graphlets on Demand

The S-PLUS Analytic Server can run analyses and return graphical results in response to user requests over the Web. In the examples below, a "servlet" -- a little bit of Java code running in the Web server -- responds to an HTTP command from a user's browser. This servlet, named GraphServlet, forwards a request to the Analytic Server to run an appropriate analysis and generate the resulting graphlet for the user. Each new Graphlet will have "hot" regions that the user can click to run further analyses and generate new Graphlets.

Examples

    Demo Plot graphs randomly generated points.
       Check out the S-PLUS code for this short example.

    USA Census & Florida Election Demo, a more advanced example, shows the power of a system of linked graphs.
 


 


Command Line Access to the Analytic Server

Another servlet, the SplusServlet, allows command-line access to the underlying S-PLUS engine from a browser. This access is primarily useful to someone developing a Graphlet application like the examples above, as it allows the developer to make changes from a Web browser without shutting down the server.

This servlet is primarily useful when you are running only a single S-PLUS session. When multiple sessions are running, a change made in one call will affect only one session, and subsequent calls might access different sessions where the change has not been made.

Example

To test the servlet, type an S-PLUS expression in the text box and click the Evaluate button. The servlet will return the command line text from the Analytic Server.

Adding Sessions

Another servlet, AddConnectionServlet, provides a way to add S-PLUS sessions to the running application. This is especially useful if you don't want to put passwords in a configuration file.

Note that the S-PLUS code and data must already be loaded in the working directory for any new S-PLUS session you create. Otherwise this servlet will make a connection, but the application as a whole won't work correctly.

    Try the servlet for adding new connections.