Troubleshooting "Caught Exception" javascript errors in Mid-tier 7.x+. |
This knowledge article may contain information that does not apply to version 21.05 or later which runs in a container environment. Please refer to Article Number 000385088 for more information about troubleshooting BMC products in containers. Legacy ID:KA310492 Problem Midtier users (Browser users) sometimes experience javascript errors (such as "Caught Exception") after working correctly for some period of time. These messages can occur as alert windows or just general javascript errors in the browser.
Known Causes This problem can occur there are some changes in a BMC Remedy application, and either the browser cache or the Midtier cache files are “out-of-sync” or are partially updated. These types of changes might be (but are not limited to) form definition changes (add or remove fields), workflow (active link) changes, and so on. When a Remedy definition changes, the Midtier must update its internal (memory based) cache. This can be done by either manually flushing the Midtier cache, or restarting the web application server (for example, Tomcat). When the browser makes a request for a form, the cache files are “streamed” in as several dynamic files/requests. The browser must then obtain a “new” copy of the cache files from the Midtier. If at any point, the browser ends up with one or more “old” cache files, this problem can occur.
This issue can occur for several reasons: 1) Browser cache: The browser maybe configured not to retrieve a new copy of the cached files 2) Mid-Tier cache: If the Midtier cache has not been flushed or the web application has not been restarted (which flushes the cache automatically) 3) Third party products: Devices such as, proxy servers, load balancers, firewalls, or netcache devices sometimes have the ability to and are configured to cache files for the browser to retrieve. This caching can lead to delivery of out-of-date or browser-incorrect files. 4) Defects fixed by a later version or patch
Solution The solution to this problem is to get the cache files on the browser to be “up to date”. To resolve the issue, perform the following steps:
1) Clear the client Browser cache. This forces the browser to obtain a new copy of the generated files from its “source”. The “source” might be from a third party device (proxy) or from the Midtier itself. 2) Manually flush the Midtier Cache (from the Midtier Configuration Tool), or Sync Cache, and then clear the client Browser cache. This will force the Midtier to update its cache. 3) Force a cache update (or flush) on any proxy server, load balancer, firewall, or netcache device that may be holding onto an older copy of the cached files. 4) Upgrade the Mid-tier to the latest available version.
Gathering Data If the given workarounds do not resolve the issue, or more specific information about the problem (what changed, for example) is desired, you can perform the following steps to capture information.
1) Turn on the browser client side workflow logging (active link logging) for the user that has the problem 2) Install the Fiddler Tool (HTTP capturing tool) on the browser client: - Open a new browser window and clear browser cache. - Start Fiddler (it starts capturing automatically). - Log on to the Midtier form that has issues. Send in the resulting workflow log and Fiddler capture log for review.
Preventative Actions There are several steps that can be done to help prevent this problem from occurring.
1) Make sure that the Browser settings are not preventing copies of the cache files from being updated. This can be done in Internet Explorer by checking the “Tools > Internet Options > General (tab) > Temporary Internet Files > Settings (button) > Check for newer versions of stored pages” setting. The recommendation is to use “Automatically”, which usually works well to make sure cache is updated when needed. 2) Any time changes are made to the Remedy application (forms, workflow, etc) make sure that the Midtier cache is flushed/sync'd. 3) If you are using any type of proxy, firewall, load balancer or netcache device that might be caching pages, provide a rule to disallow caching of pages from your Midtier server. This will ensure that the device cannot cause the problem, when all other layers have the cache updated properly.
Related Products:
|