webMathematica >
webMathematica Tutorial

New Features of webMathematica

webMathematica 3.0

Interactive Tools

webMathematica 3.0 replicates the popular interactive Manipulate command for web pages. You can create web pages that contain various GUI features such as sliders, checkboxes, and popup menus, which control a calculation. All of this is done with the same concise syntax provided by Manipulate.

Expression Language and Custom Tags

webMathematica 3.0 comes with support for a more concise way to call to Mathematica from the web page. It also contains a library with a number of useful tags; these tags provide a number of valuable tools, such as redirecting flow as the web page is generated.

Queueing System

webMathematica 3.0 allows long running or asynchronous computation jobs to be executed by a new queueing system.

Support for Wolfram Workbench

Wolfram Workbench provides a significant number of features that help to accelerate the development of webMathematica content. webMathematica 3.0 integrates with Wolfram Workbench so that Mathematica code can be debugged as it runs in the server.

Web Services

webMathematica 3.0 enables you to write REST and SOAP web services that use Mathematica.

New Logging System

A new, highly configurable logging system helps to track different types of errors and to identify problems so that they can be resolved easily.

Improved Kernel Monitor

The Kernel Monitor has been significantly improved. It has new code for monitoring memory usage, running time, concurrent requests, and Java objects; this helps to improve the reliability of the server. It allows starting and stopping of individual kernel pools and canceling individual computations. Queued jobs are monitored for progress and errors.

Improved Kernel Interaction

webMathematica 3.0 has improved the way that it interacts with the Mathematica kernel. It launches kernels as soon as the server starts and launches all kernels in parallel; this helps to improve the startup time for the server. It also has a number of new configuration tools, which limit the use of time and memory by the kernel; this helps to improve the reliability of the server. Kernels are automatically restarted in the background, so service remains uninterrupted.

Incompatibilities

This section lists any changes in webMathematica 3.0 that work differently from previous versions.

Classic webMathematica Technology Dropped

Support for the classic webMathematica technology has been dropped. This technology has been deprecated since webMathematica 1.0.

Configuration

A new configuration system based on a single XML file, MSPConfiguration.xml, is now supported. The name of the security configuration file is now called SecurityConfiguration.m.

webMathematica 2.3

The main new feature of webMathematica 2.3 is support for Mathematica 5.2. There are also a number of internal improvements.

webMathematica 2.2

Support for Mathematica 5.1

webMathematica 2.2 comes with Mathematica 5.1. Mathematica 5.1 contains many important new features relevant to web operations, the most important being optimized binary I/O, graph and array plotting, and comprehensive string manipulation, matching, and searching capabilities.

Database Connectivity

DatabaseLink provides Mathematica with an industrial-strength, ready-made solution for integrating Mathematica with any standard SQL database. Integrated with Mathematica 5.1, it provides a convenient bridge between SQL databases and webMathematica. One particularly useful feature for webMathematica is that DatabaseLink contains the HSQL Database Engine (HSQLDB), a lightweight database. This means that if you do not already have a database or want to experiment with using one, you do not have to set one up; instead you can use HSQLDB.

Client Web Services

The Mathematica Web Services Package allows Mathematica to call web services across the internet. Bundled with Mathematica 5.1, it provides a convenient way for webMathematica to use a web service. This is an important way to extend the functionality of a webMathematica website.

webMathematica 2.1

The main new feature of webMathematica 2.1 is support for Mathematica 5.0. There are also a number of internal improvements and new examples.

webMathematica 2.0

webMathematica 2.0 offered a number of new features and improvements. These are listed in this section.

Support for Mathematica 4.2

webMathematica 2.0 comes with Mathematica 4.2. Mathematica 4.2 has many features that are very relevant to web operations, the most important being the XML support. There are many examples in webMathematica 2.0 that use XML features and XML applications such as MathML and SVG.

Simplified Installation

webMathematica 2.0 has a simplified installation process that only requires the installation of the webMathematica web application. There is a minimum of extra configuration that is required.

Extended Documentation and Examples

The documentation for webMathematica is now shipped in HTML format and accessible from the webMathematica front page. In addition many new examples have been added that demonstrate the new features.

New Templating Mechanism Based on JSP Custom Tags

A new HTML templating mechanism based on JSP custom tags has been added. This is now the preferred mechanism for using webMathematica. The mechanism is easier to understand, it allows the use of other JSP custom tag libraries, and it facilitates the integration of webMathematica into other server applications.

MathML, SVG, and XML Support

Support for the XML applications, MathML and SVG, is built into webMathematica 2.0. In addition it can make use of the new XML processing tools that are available in Mathematica 4.2.

Support for Catching Message and Print Output

New functions are provided for catching the output of any Mathematica Message or Print statements. This can be useful for debugging or developing material.

Support for HTTP File Upload

New functions are provided to support HTTP file upload. This is an important way to submit information to a webMathematica web server.

Support for HTTP Session Variables

New functions are provided for saving material in an HTTP session stored in the server. This can be useful for saving results from one computation to another.

HTML Formatting Functions

New functions are provided for formatting results into HTML.

Incompatibilities

This section lists any changes in webMathematica 2.0 that work differently from 1.0.

Location of Security Configuration File

The mechanism for locating the security configuration file has changed from webMathematica 1.0. Now the security configuration file is named in the pool configuration file and is located in a central configuration directory in webMathematica/WEB-INF/conf. Previously the configuration file could be loaded from anywhere on the Mathematica path.
This change was made because loading the security configuration from a single central location is more secure. Since the default security system of webMathematica is very conservative, any sites that do not move their security files will run with a higher level of security than is expected. Security is discussed in a later section.

Location of MSP.conf

The default location MSP.conf has been moved into a central configuration directory in webMathematica/WEB-INF/conf. This leads to a great simplification in the setup of your server because it will look automatically in this location.