The StartCISPage servlet is the central servlet that is used in order to open intelligent HTML pages. It was already mentioned several times in this documentation. This document describes certain attributes that you can pass inside the servlet call. It covers the following topics:
A normal page is called in the following way:
http://<host>:<port>/<webapplication>/servlet/StartCISPage?PAGEURL=/<project>/<pagename>.html
The StartCISPage servlet creates a frameset page around the intelligent HTML page that provides for specific functions that are internally required.
Application parameters can be passed by just appending the name and the value of the parameters to the URL. Each parameter must be the name of a property that is provided for by the server side adapter.
Example: the adapter provides for a property
company
. When opening a page via
http://<host>:<port>/<webapplication>/servlet/StartCISPage?PAGEURL=/<project>/<pagename>.html&company=softwareag
then the setCompany
method of the adapter is
called and the value "softwareag" is passed.
This is a very simple and powerful way to pass parameters through the URL.
A page relates to adapters living inside a session on server side. A session is opened by default when referencing a page via StartCISPage. By default, it is closed when the initial StartCISPage page is removed - either by closing the browser or by loading a different URL into it.
You can explicitly control this automated removal of sessions with the
parameter ONUNLOADBEHAVIOR
. If you call a page in the
following way, the session is not removed when the page is removed:
http://<host>:<port>/<webapplication>/servlet/StartCISPage?PAGEURL=/<project>/<pagename>.html&ONUNLOADBEHAVIOUR=NOTHING
By default, a new session ID is internally generated when opening a page by StartCISPage. But you can also pass the session ID and the subsession ID explicitly. This might be of interest if you require to control the Application Designer session management from outside.
Calling a page in the following way
http://<host>:<port>/<webapplication>/servlet/StartCISPage?PAGEURL=/<project>/<pagename>.html&SESSIONID=4711&SUBSESSIONID=5
will internally open the session with ID 4711 - or use 4711 if it already exists. The same applies on subsession level.
Pay attention: if you use this possibility, then you are responsible for managing session IDs in such a way that they are unique.
As described in Multi Language Management, Application Designer internally holds a language per session. This language can be set from outside:
http://<host>:<port>/<webapplication>/servlet/StartCISPage?PAGEURL=/<project>/<pagename>.html&LANGUAGE=E
By calling
http://<host>:<port>/<webapplication>/servlet/StartCISPage?PAGEURL=/<project>/<pagename>.html&SESSIONCSS=../softwareag/styles/CIS_PARROTT.css&DEFAULTCSS=../softwareag/styles/CIS_PARROTT.css
you define that the CIS_PARROTT style sheet is used instead of the default style sheet. Of course, you can reference any style sheet of your own.
All parameters can be mixed without any restrictions.
Instead of adding the parameters to the URL, you can also use the HTTP method POST
to set the parameters in an HTML form.
Example (similar to the example under Appending Application Parameters, but with POST
):
<html> <head> <title>Start Application Designer Demo Application</title> <script type="text/javascript"> function submitStart() { document.forms["myform"].submit(); } </script> </head> <body> <form id="myform" name="myform" action="servlet/StartCISPage" method="post"> <input type="hidden" name="PAGEURL" value="/<project>/<pagename>" /> Company: <input type="input" name="company" value="softwareag" /><br/> </form> <a href="#" onclick="submitStart()">Start Demo</a> <div id="status">Click on Start Demo</div> </body> </html>