Single-Port Sessions
What Is a Single-Port Session?
When you use Cockpit 10 on the Web and all the requirements are met, Cockpit 10 on the Web is started as a single-port session. That means that only one session of the Web Engine is used and thus only one port license is occupied on the CSP Server (and in the database), irrespective of the number of times you start Cockpit 10 on the Web.
If the requirements for a single-port session are not met (e.g. cookies not allowed), a separate session is used for each call. This means that the corresponding number of ports are occupied on the CSP Server (and in the database).
To ensure security and prevent invalid data from being displayed, single-port sessions are only possible if you display reports from the same repository of a CSP Server. If you want to display reports from different repositories at the same time, you can use different browser types (see the section on special issues in Calling a Single-Port Session).
Applies only to IIS: If you set the entry cookieless in the web.config file to "true", you can prevent single-port sessions (see Requirements).
Restrictions
When a single-port session is used, there are a number of important restrictions with respect to functionality in order to avoid problems that can arise as a result of the concurrent use of a single session:
- All modal dialog boxes (such as property windows, the DataView Designer, element selection dialog boxes, layout component creation dialog boxes, etc.) can only be called once. This means: If a modal dialog box is open in a browser tab and you try to call the dialog box again in another browser tab (or in another browser window), a message is displayed, notifying you that this is not possible. You have to close the modal dialog box in the other browser tab before you can open this one.
- If you have opened multiple browser tabs containing different reports and you then open another browser tab and log in to another repository or with another user name, the current session is terminated and restarted. This makes all other browser tabs inactive. It means that although the report is still displayed, as soon as you click the report you receive a message notifying you that the browser tab is no longer active.
- A report can only be opened once. If you open the same report in another browser tab or another browser window, the report is automatically deactivated in the "old" browser window or tab. Although the report is still displayed, you can no longer work with it. All report-independent elements such as the Navigator can continue to be used. You can thus open another report.
Requirements
Server-Side Settings (IIS)
By default, single-port sessions are activated by means of a setting in the Web.config file.
Open the Web.config file which is located under C:\Inetpub\wwwroot\Cockpit10 by default.
Search for the text "<sessionState".
Check the cookieless entry. This entry must be set to "false". Example: extract from the web.config file:
<sessionState
mode="InProc"
stateConnectionString="tcpip=127.0.0.1:42424"
sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes"
cookieless="false"
/>
Client-Side Settings
The browser must accept cookies. Refer to the online help system for your browser to see where to change the cookie settings.
The management of cookies and thus the identification of the session is tied to the browser type. For example, if you open a report in Chrome and then open a second report in Firefox, two separate sessions are used (and two ports are thus occupied in the CSP Server).
Calling a Single-Port Session
If all requirements for using a single-port session are met (see Requirements), multiple calls of Cockpit 10 on the Web are executed automatically in a common session.
Start Cockpit 10 on the Web in the usual way. You can also use parameterized URL calls. When you execute another URL call that calls the same repository with the same user, the current session continues, and you can continue to use existing browser windows/tabs.
The browser tabs respond independently of each other to the different settings of the user interface (e.g. hiding the Navigator, full-screen mode, etc.). For example, it is possible to start a report in full-screen mode in one browser tab and another report in another tab without full-screen mode.
When you log out, all open and unsaved reports in all open browser tabs or windows are detected automatically, and the close dialog box is called.
Restrictions
- All modal dialog boxes (such as the Properties windows or the DataView Designer, etc.) can only be called once.
This means: If a modal dialog box is open in a browser tab and you try to call another modal dialog box in another browser tab (or another browser window), a message is displayed, notifying you that this is not possible. You have to close the modal dialog box in the other browser tab before you can open this one.
- If you have opened multiple browser tabs containing different reports and you then open another browser tab and log in to another repository or with another user name, all previous browser tabs become inactive. It means that although the report is still displayed, as soon as you click the report you receive a message notifying you that the browser tab is no longer active.
- A report can only be opened once. If you open the same report in another browser tab or another browser window, the report is automatically deactivated in the "old" browser window or tab. Although the report is still displayed, you can no longer work with it. All report-independent elements such as the Navigator can continue to be used. You can thus open another report.
Special Issues
- If cookies are not allowed (on the client and/or server side), each call starts a separate session, and each session occupies one port on the CSP Server (and one port of the database).
- The management of cookies and thus the identification of the session is tied to the browser type. For example, if you open a report in Chrome and then open a second report in Firefox, two separate sessions are used (and two ports are thus occupied in the CSP Server).