This updated update is for all GroundWork customers running GroundWork Monitor Core or Enterprise 7.2.1 who want to use the new GroundWork Iframe Portlet in complex ways.
What is in this update?
This Technical Bulletin provides a documented and scripted method of applying the changes addressed in internal ticket GWMON-13506, which is related to writing the client side page. There are two issues described here.
First issue addressed
An error message
Invalid Input The target blockeID to update is not found: UIMask Workspace
appears at the bottom of the screen using the portlet. This error is transient, and disappears once the page is loaded. There may be issues with loading the page that make this error more frequent, however, if the refresh interval is smaller than the time required to load a very big dashboard (such as a Grafana dashboard with many graphs).
However, what the error message is correctly indicating is that the top-level portal decoration content, including the banner and menu bar, is not being displayed. The page URL is unchanged. Refreshing the page brings back the missing portal content.
To repair, a new portal-groundwork-base.war renders IFrame using innerHTML instead of the previous method document.write(). Document.write can replace the entire document if executed after page is loaded. This explains what the customer might see: likely it is a client-side timing/race issue.
Second issue addressed
Just before the message above is rendered, a "Loading" alert dialog is displayed. The IFrame content is fairly heavy and might indeed be taking time to render. In fact, the "Loading..." alert dialog follows timeouts on busy servers for portal ajax calls made when selecting tabs or panels (on pages where these are defined).
To repair, a new, patched portal.war file is supplied that suppresses the alert for these calls to the server. Modifications were also made to iframe.jsp. Other portlets that rely on this code have been tested, and are not affected by the change.
- You need to be running GroundWork Monitor Enterprise, version 7.2.1, with or without the Rollup Patch (as of version 7.2.2-4108. Later rollup patches may include this technical bulletin)
- This technical bulletin does not depend upon prior technical bulletins
- There is a need to schedule a downtime to apply this technical bulletin (time required is restart of gwservices, ~ 5 minutes)
|To use the new GroundWork Iframe Portlet, which is not a choice in the basic install, you must do these steps independently of the patch:
Once those steps are done you can create pages (See How to add a portal page) using the GroundWork Iframe Portlet. Pages created before or after the patch was made will not require modification. Rolling back the patch will not change pages created before or after the patch was made.
- As the root user, copy the attached tarball to an empty directory on the GW server already in place.
- Unpack the tarball using the command:
tar xf TB7.2.1-11-gw-iframe-fix.tgz
- Change into the directory created by untarring:
- Run the installer script:
The install script will test that you are on a 7.2.1 system (which is required), that you have not already installed this patch, and that you want to go ahead.
- Respond to the install-confirmation prompt when it appears.
- New files will be copied into place. Monitoring in general can continue while this patch is installed; there is a momentary restart of the web service which may terminate some user sessions.
Once this is installed you will be able to use the GroundWork Iframe Portlet for complex dashboards without issues.
Reversal of this patch will remove the changes made to the GW server by restoring the previously backed up files. This will ensure that changes unrelated to this patch will remain undisturbed. You will not lose page content. However the symptoms addressed by the patch will probably reappear.
- As the root user, navigate to the patch-unpack directory you created when installing the patch, (if that directory no longer exists, first unpack the patch again).
- Run the uninstall command: