The server toolkit application can be initialized (automatically during
the application server startup sequence or from an HTML client) by using the
StartServerServlet after the Web application server has been started.
After the toolkit application has been initialized, the HTML client can
connect to the server using the CSEstablishSessionServlet class. This class
does the following:
- Gets the device type
- Creates the ChannelContext
- Parses the RequestHeader
- Parses the RequestData
- Performs the session management to support custom and HTTP sessions
- Updates the ChannelContext with the session
- Provides support for using cookies and hidden input fields
- Determines the appropriate request handler (in this case, HtmlRequestHandler)
and requests that it process the session request
To process the session request, the HtmlRequestHandler does the following:
- Creates the operation for the session startup as defined in the startupOp
element of the HtmlClient KeyedCollection of the btt.xml file
- Adds the dse_replyPage hidden input field to the operation context with
the value specified under the homePage element of the HtmlClient KeyedCollection
of the btt.xml file
- Adds the dse_sessionId hidden input field to the operation context with
the session ID as defined by the CSEstablishSessionServlet
- Runs the operation
- Gets the sessionId
- Adds the session context to the table of sessions managed by the CSSessionHandler
- Adds the hidden input fields that are required for all standard requests
The execute method of the startup operation does the following:
- Creates the session context by ContextFactory.createContext("htmlSessionCtx",
true)
- Chains the session context to the root context
The client browser shows HTML pages that have been rendered by JSPs. The
user's actions are sent as HTTP requests to the server. The server replies
with HTML to be displayed in the browser.
After the first request to the server, any subsequent requests from the
client include the fields that were returned from the server in the previous
response. Therefore, the fields that are required in a request for executing
operations are dependent upon what has been sent previously. Remember that
an HTML page on the client workstation contains what the server has built
as a response to a previous request.
The HTML page rendered by a JSP can contain simple data fields or complex
data such as indexed collections. Other than application fields, there are
some mandatory hidden fields that need to be present in any HTML request.
These must have been returned to the client in the previous HTML response
from the server. See Populating the response page with the required fields.