IBM Support

Multiplicity: Understanding Concurrent Browser support

Technical Blog Post


Abstract

Multiplicity: Understanding Concurrent Browser support

Body

Do you remember that movie Multiplicity where Michael Keaton clones himself to become more productive?  A similar approach can be followed when using Maximo 7.5:  if you want to perform work in parallel to become more productive, you can launch multiple browser tabs or windows as the same user.  However, there are some limitations that you need to learn before attempting concurrent sessions.

 
Server Sessions
When you first connect to Maximo and login, you receive a unique Server Session between your client and the J2EE server that hosts the Maximo application.  All of the browser windows and tabs that you launch from this client share the same server session by default.  (This behavior can be overridden by certain browsers by following the technote here but we do not recommend it because it might violate your organization’s security policy and is difficult to configure.)   
 
UI Sessions
Since all browser windows and tabs share the same server session, each instance of Maximo opened in a browser window or tab needs a different UI Session so the state of each browser window can be maintained independently.  Without this independent UI session there is potential for data corruption or application errors.  For example user is in application A that has a table.  The user opens up a new Tpae instance in another browser window and navigates to application B.  If those two windows shared the same state then the first window’s state would no longer be valid because the user went to a different application in the second window.  So if the user tried to click the New Row button in application A, an error would be returned since that table no longer exists on the server's copy of the UI Session.  

 Session Overview Figure
 
Launching Multiple Concurrent Sessions
To prevent each of your windows from sharing the same state you have to launch the new session with a correct URL format.  If you attempt to open a new browser tab or window and copy and paste a Maximo URL that contains the uisessionid parameter, the Maximo server will invalidate your old session and can lead to Communication Errors and lost data in the previous browser tab or window.  Here’s an example URL that will not work:
http://localhost/maximo/ui/?event=loadapp&value=meter&uisessionid=3333

If you copy a URL like this from one browser tab to another, the uisessionid value will cause the second tab to steal the session state from your previous browser tab.

Here’s an example of a URL format that will work and allow you to launch multiple sessions in multiple tabs:
http://localhost/maximo/ui/login

This will allow you to become more efficient and work in parallel.  When this procedure is followed correctly, each browser tab will receive its own unique uisessionid that shows in the URL bar of the browser when you launch to an application.  For instance, the first browser window may show:
and the second may show something like this:
http://localhost/maximo/ui/?event=loadapp&value=pmchgfscga&uisessionid=70
 
Controlling the Maximum Number of Concurrent Sessions Per User
By default each client can launch up to 10 concurrent UI Sessions (based on this system property mxe.webclient.maxUISessionsPerHttpSession.) This is to protect system resources. System administrators should consider reducing the number of concurrent sessions each user can launch lower than the default 10 to reduce the stress on your server. Administrators, your end users will get a nice error message if they try and launch more concurrent sessions than they are allowed. 
 

[{"Business Unit":{"code":"BU005","label":"IoT"}, "Product":{"code":"SSLKT6","label":"Maximo Asset Management"},"Component":"","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"","Edition":""}]

UID

ibm11133847