What's New in SilverStream Version 3

SilverStream Application Server Version 3 provides a wealth of new features. This page summarizes the new features and provides links to their documentation. It also provides other documentation enhancements and corrections.

(See the release notes for the latest information about software and hardware requirements and supported databases.)

What's new in Version 3.0   Top of page

Java 2 support

Feature Description
Java 2 Enterprise Edition The SilverStream Application Server Version 3 supports J2EE, which includes:
  • Enterprise JavaBeans (see below)
  • JavaServer pages (see below)
  • Servlets (version 2.1a)
  • XML
  • JDBC (version 2.0)
  • CORBA (see below)
  • Transactions (JTS/JTA)
  • Java Message Service (JMS)
  • JNDI

Note that not every aspect of J2EE is fully supported in the initial Version 3.0 release. Support for some features will be added later.

    For more information, see Coding Java for SilverStream Applications.

Enterprise JavaBeans Implements the EJB 1.1 specification, including support for session beans and entity beans (both container- and bean-managed persistence).

    For more information, see:

JavaServer pages Provides support for pages that conform to the JSP 1.0 specification. JSP 1.0 pages that you've authored outside of SilverStream can run inside a SilverStream server.

    For more information, see Using JavaServer Pages.

New CORBA ORB Provides the Java-based JBroker ORB for both development and deployment.

    For more information, see Using CORBA Objects and the JBroker Help.

APIs

Feature Description
SilverStream APIs SilverStream Application Server Version 3 provides numerous enhancements to the existing APIs, plus the following additions.

New packages:

New classes and interfaces in existing packages:

com.sssw.rt.event: AgiRTEditorEventProducer

com.sssw.rt.expr: AgNan

com.sssw.rt.form: AgcBigDecimalField, AgcDoubleField, AgcSpinner, AgiHelpInfo, AgiHelpProcessor

com.sssw.rt.tview: AgoColumnButtonCheck, AgoColumnButtonRadio, AgoColumnForm, AgoColumnIntegerSpinnerField, AgoColumnComboBox

com.sssw.rt.util: AgConvert, AgoDatabaseConnectException, AgoObjectInputStream, AgoTreeDataManager, AgrData, AgrServerSession, AgRuntime

com.sssw.rts.adminapi: AgiAdmCluster, AgiAdmClusterServer, AgiAdmEjbJar, AgiAdmStatContainer, AgiAdmStatElement, AgiAdmStatSet, AgoAdmStatInfo, AgoAdmTableListChanges, AgoAdmTableSubset

com.sssw.shr.page: AgiHTMLViewListener, AgpControlHTMLUnitBase, AgpHTMLUndoable, AgpHTMLUnitHelper

com.sssw.srv.api: AgiDatabaseMgr, AgiEJBContext, AgiLogger

com.sssw.srv.busobj: AgiInitDatas, AgoCGIHeaders (moved from com.sssw.srv.agents), AgoHttpErrorEvent, AgoServerDeactivatedEvent, AgoDeactivatingEvent, AgoTransactionAbortEvent (moved from com.sssw.srv.mail)

    For more information, see Coding Java for SilverStream Applications and the SilverStream API Reference.

Sun Java 2 APIs SilverStream Application Server Version 3 supports the following Sun Java 2 APIs and provides documentation for each API:
  • Java 2 Standard API
  • Java 2 Enterprise APIs
    • EJB API (javax.ejb)
    • JDBC Optional API (javax.sql)
    • JNDI API (javax.naming)
    • RMI-IIOP API (javax.rmi)
    • Servlet and JSP API (javax.servlet)
    • Transaction API (javax.transaction)

SilverStream also provides documentation for the Java 2 Standard SDK.

    For more information, see Coding Java for SilverStream Applications.

Openness

Feature Description
External development support

Provides support for external development. You can now use the Java development tools of your choice to build SilverStream applications, ranging from third-party code editors (such as Codewright) to complete IDEs (such as JBuilder or Cafe).

External development is supported for writing many kinds of objects that run on the SilverStream server as well as external Java clients that access the SilverStream server.

SilverCmd In part to support external development, SilverStream Application Server Version 3 provides a command line interface called SilverCmd that provides tools that allow you to interact with the SilverStream Server without using the Designer or SMC. For example, you can develop objects, such as servlets, in an external development environment, then use SilverCmd to import the objects into the SilverStream server.

SilverCmd also provides tools for automation, so you can script actions that you would otherwise perform using the Designer or SMC, such as do the build process or set security.

COM support Because SilverStream Application Server Version 3 does not use the Microsoft JVM (which does not support Java 2), JActiveX no longer works.

Version 3 offers a new mechanism for calling the services of COM objects from an application.

DLL support Provides a new mechanism for calling DLLs directly from an application.
External editor support You can now use an external editor to write your code.

Development environment

Feature Description
Enhancements to pages Provides support for pages serving an arbitrary set of URLs. This allows a single page to service multiple URL requests.

Allows you to specify data typing and formatting for text fields in pages. You can specify these characteristics of a text field at design time in the Property Inspector or programmatically at runtime.

You can now specify row-level formatting in HTML data view controls.

Enhancements to forms Supports Swing controls as well as the pre-Version 3 form controls. When you use the wizard to create new forms, the controls it creates are SilverStream's Swing extensions, not AWT extensions.

    For information about the methods you can use with SilverStream Swing controls, see com.sssw.rt.jform in the SilverStream API.

You can now provide custom processing for context-sensitive help. Help pages don't have to be displayed in the browser.

Third-party controls can now provide context-sensitive help by implementing the AgiHelpInfo interface.

Data validation has been enhanced.

You can now add the following objects as columns of an AgcView control: check boxes, radio buttons, integer spinner fields, combo boxes, and forms. In addition, you can now more easily build hierarchical views using the new AgoTreeDataManager class.

Pass-through DSOs Pass-through DSOs allow you to dynamically connect a client's data cache to a standard SilverStream data set, with the connection between the data cache and the data set to be explicitly made at runtime. There are two main reasons for using a pass-through DSO:
  • You want to use the data cache for a non-SilverStream client, such as an EJB or a client built using a third-party tool.
  • You want to share the definition of a SilverStream data set among several SilverStream or non-SilverStream clients, so that the data set definition can be maintained in one place.
Enhanced Debugger Many new debugging features, including:

  • Debugging server objects (pages, business objects, EJBs, DSOs)
  • Running the Debugger standalone locally and remotely
  • Adding breakpoints in exceptions
  • Suspending and resuming threads
  • Browsing loaded classes
  • Viewing variable types
  • Displaying additional thread states ("wait", "wait on monitor" and "sleeping")
  • Viewing the source and variables for any frame on the call stack

    For more information, see the SilverStream Debugger

New Profiler The new SilverStream Profiler allows you to identify and analyze performance bottlenecks in your Java code caused by inefficient methods and memory leaks, and monitor contention in synchronized processes.
New JAR Designer The new JAR Designer provides support for creating and maintaining JAR files and EJB JAR files.
Enhanced Programming Editor The enhanced Programming Editor now provides a whole-file view.
New Designer preferences New preferences include the ability to specify an external editor and to specify compiler flags.

Platform support

Feature Description
HP-UX The SilverStream Server now runs on HP-UX. See the release notes for the latest information.
DBMS support Adds the following DBMS support:
Support for large database schemas Allows you to specify a subset of database tables to make available to the SilverStream server when adding a database to the server.

This is useful if you have a very large database schema but only need to use a subset of tables with your SilverStream applications.

Enhanced SilverJRunner SilverJRunner has been enhanced to be pure Java. So SilverJRunner should be usable on all platforms that have Java 2 VMs.

SilverStream has a two-tier approach to SilverJRunner:

  • Tier 1: The platforms for which SilverStream tests and supports SilverJRunner
  • Tier 2: The platforms for which SilverJRunner should work but which SilverStream will not test

    For more information, see the release notes and Setting up SilverJRunner clients.

Server administration

Feature Description
General administration Many new general administration features, including:

Also, the SilverStream server is more robust. For example, it now recovers from lost database connections.

Security Provides the following new security features:

Also, you can set security and manage users from the command line using SilverCmd.

Statistics and logging Provides the following enhanced support for viewing server statistics and logging server activity:

Miscellaneous

Feature Description
Enhanced online help SilverStream Application Server Version 3 includes a completely redesigned online help system that provides:
  • A standard look and feel with navigable Table of Contents frame on the left with contents on the right
  • A more consistent user interface -- all the information is organized into books
  • Greatly enhanced use of live hyperlinks throughout the system to make navigation easier
  • Table of contents and indexes with live links for each online book
  • A master index with live links that covers the entire help system except the API documentation
  • Many new application techniques
  • A guide to the sample applications
  • Enhanced SilverStream API documentation, generated using the Java 2 javadoc tool
  • Enhanced Sun API documentation (see above)
  • Enhanced full text search: you can now restrict a full-text search query to specific parts of the online help to get more focused results
  • Enhanced Netscape Navigator support
Other Also provides:

What's new in Version 3.1   Top of page

New features

Documentation enhancements and corrections

What's new in Version 3.5   Top of page

New features

Feature Description
Server platforms The SilverStream Application Server now runs on Linux, AIX, and Solaris 8.

    For the latest information about software and hardware requirements, see the release notes.

Database platforms The SilverStream Application Server now supports:

The SilverStream Application Server on Linux now includes Sybase Adaptive Server Anywhere (authenticated version) for local development and testing.

    For the latest information about supported databases, see the release notes.

Designer platforms The SilverStream Designer is now available on Linux.

    For more information, see the release notes.

External IDE support and code examples The SilverStream Application Server now provides integrations for several popular IDEs. These integrations support the development and deployment of SilverStream applications from:
  • Borland JBuilder
  • WebGain VisualCafe
  • InLine Standard
  • Macromedia Dreamweaver

    For information on supported versions, see the release notes.

To help you learn about the kinds of SilverStream objects and applications you can develop in these IDEs, Version 3.5 also includes a set of external 3GL code examples. They give you a chance to try working with:

  • EJBs
  • Servlets
  • Java clients
  • JSPs

    For more information on the integrations and code examples, see Using External IDEs.

Web Server Integration modules The SilverStream Application Server now provides Web Server Integration modules for Microsoft's IIS and Netscape's iPlanet Enterprise servers that run on Windows NT and 2000. The SilverStream Web Server Integration (WSI) modules allow you to integrate a Version 3.5 or later SilverStream Application Server into your existing IIS or iPlanet Web server framework. The WSIs support Versions 4.0 and above of IIS and iPlanet servers.
EJB deployment The new Deployment Plan Designer lets you perform all of the tasks associated with EJB deployment. In it, you specify the information required for deployment in a deployment plan. The deployment plan replaces the concept of the deployed JAR.

Existing deployed JARs will run as is. However, if you want to edit the deployment information for an existing deployed JAR, you first need to migrate the JAR to a deployment plan.

    For more information, see Migrating 3.0 EJB JARs to 3.5.

JSP deployment The SilverCmd utility BuildJspJar allows you to deploy JavaServer Pages (JSPs) authored outside of SilverStream to a SilverStream server. It combines the capabilities of the JSPCompiler and DeployJSP utilities into a single command.
Accessing classes in external JARs The SilverStream Application Server now supports the J2EE-compliant use of a manifest class-path entry to resolve references to classes that reside in other JAR files (either EJB or standard JARs). Earlier versions of the SilverStream Application Server described other techniques that allowed you to access these referenced files; however, SilverStream recommends that you now use this technique.

    For more information, see the section on creating and formatting Manifest files in the SilverStream JAR Designer.

Compiler The default Java compiler installed with the SilverStream Designer has been changed from Visual Cafe to Sun Java 2 javac.

    For more information, see the SilverStream Designer section of the release notes.

Printing You can now print your Java code from the Programming Editor for pages, forms, and business objects, either as monochrome output or as a chroma-coded listing on a color printer.

    For more information, see the section on printing your code listing in the Programming Editor.

J2EE mail support The SilverStream Application Server now ships with additional Sun files that support development of JavaMail applications. This includes:
  • JAR files for the JavaMail API, POP3 Provider, and JavaBeans Activation Framework (JAF) API: mail.jar, pop3.jar, and activation.jar. These files are installed in the SilverStream lib directory (typically C:\SilverStream35\lib).

  • Javadocs for the JavaMail and JAF APIs, accessible through SilverStream API Reference help.

You can use these files to code your own client or server objects that send or receive mail according to J2EE standards. (Note that JavaMail support is not currently integrated with SilverStream mail-triggered business objects.)

    For more information, see Coding Java for SilverStream Applications.

SilverJRunner SilverJRunner is now supported on Linux.

When starting SilverJRunner, you can now pass one or more application-specific arguments to the form you're running. You can use the new method agGeneral.getArguments() in your form code to access those arguments.

    For more information, see the release notes and Deploying and Distributing Applications.

SilverStream Management Console (SMC) Running the SMC in SilverJRunner is now supported on Linux and Solaris.

    For more information, see the release notes.

XML parser The SilverStream Application Server Version 3.5 includes Version 3.0.1 of XML4J, the IBM XML Parser for Java (SilverStream Version 3.0 included XML4J Version 2.0.15).

    For more information, including information on updating your application if you had been using Version 2.0.15 of XML4J, see XML Parser for Java.

Sample databases The new Accessor3 sample database illustrates SilverStream's accessor object technology, which allows you to write applications that pass entity bean data efficiently between EJB clients and the entity beans that contain the data. Accessor objects allow you to bind data-aware form and page controls to the database fields exposed by an entity bean. This database also contains the base classes that you must extend and the interfaces you must implement when writing your own applications that use accessor objects.

The new DataXpress3 sample database contains an application that can be used to publish data between databases on a SilverStream server. It also has options to export a table out of a database to a formatted file and to import a comma-delimited file into a database. The DataXpress application features an updatable data source object that configures itself at runtime based on user-selected data.

In the existing Examples3_Java database, several examples in the Version 2 AWT-based controls have been updated to Version 3 Swing-based controls. The updated examples include JTechBox, JList, JRadioButton, JSpinner, JTextArea, and JTextField. Also, the JTable example now demonstrates how to sort a column dynamically when a user clicks its header.

Sample security XML files In addition to secure_server_sample.xml and secure_application_sample.xml (which have both been enhanced for Version 3.5), there is a new sample XML file for setting security, secure_cluster_sample.xml. You can use this file to secure the cluster administration resource.

These files are all sample input files for the SetSecurity SilverCmd and are found in the DTDs directory under the SilverStream installation directory. Each of the XML files is well-commented with usage notes.

    For more information, see Locking down an application or a server.

Server URL encoding property The SilverStream Application Server now supports a server property that allows you to change the scheme used by the SilverStream server to URL-encode and decode form content: http-server.com.sssw.srv.international.UrlEncoding. You typically only need to change server encoding when the majority of client browsers in your environment require character encodings that are not ISO 8859-1 (Latin 1).

    For more information, see Server URL Encoding Property.

Default install names A couple of important names set up during the SilverStream Application Server install have new default values for Version 3.5. The default for:
  • SilverStream install directory is now c:\SilverStream35
  • SilverMaster database is now SilverMaster35

A white paper describing the new features in Version 3.5 is available on the SilverStream Web site.

Documentation enhancements and corrections

What's new in Version 3.5.1   Top of page

The SilverStream Application Server now provides a Web Server Integration module for Netscape's iPlanet Enterprise server that runs on Solaris. For more information, see Web Server Integration modules.