Cache Management

Note:

If cache management requires global cache management across various nodes then refer to the Global Cache Flush Support section for more details.

A great deal of information in the system changes infrequently. In order to avoid accessing the database every time this type of information is required by an end-user, the system maintains a cache of static information on the web application server. In addition to the web application server cache, information is also cached on each client browser.

Server Cache

Note:

Maintenance of the cache is performed automatically by your application. Whilst there are commands to force refreshes of the cache, these are designed for administrator and developer use only. Additional security setups are required to enable individual users to access to the facilities below.

The cache is populated the first time any user accesses a page that contains cached information. For example, consider a control table whose contents appear in a drop-down on various pages. When a user opens one of these pages, the system verifies that the list of records exists in the cache. If so, it uses the values in the cache. If not, it accesses the database to retrieve the records and saves them in the cache. In other words, the records for this control table are put into the cache the first time they are used by any user. The next user who opens one of these pages will have the records for this control table retrieved from the cache (thus obviating the database access).

The following points describe the type of data that is cached on the web server:

  • Field labels. This portion of the cache contains the labels that prefix fields on the various pages in the system.
  • System information. This portion of the cache contains installation and license key information as well as basic information about the various application services (for example, the URL’s that are associated with the various pages).
  • Menu items. This portion of the cache contains the menu items.
  • Drop-down contents. This portion of the cache contains the contents of the various drop-downs that appear throughout the system.
  • XSL documents. This portion of the cache contains each page’s static HTML.
  • Portal information. This portion of the cache contains information about which zones are shown on the various pages.

The contents of the cache are cleared whenever the web application server is restarted or as automatically refreshed as controlled by the fieldValuesAge parameter on the web application server Web Application Server Configuration Files configuration file. This means that fresh values are retrieved from the database upon first use by end users.

If you change the database after the cache is built and the information you changed is kept in the cache, users may continue to see the old values. If you don’t want to restart your web application server, you can either use the relevant operation on the JMX FlushBean Mbean available on the web application server or issue a custom browser URL to issue the appropriate command (see below). See Web Application Server JMX Reference for details.

Note:

To use the browser URL for the resetting of the cache, the user must be logged on to the application’s browser interface and have access to the F1ADMIN application service.
Functions JSP MBean Operation
Refresh all cache flushAll.jsp flushAll
Refresh all drop-down data flushDropdownCache.jsp flushDropDownCache
Refresh field labels flushMessageCatalog.jsp flushMessageCatalog
Refresh Fields and FK information flushFieldAndFKMetaData.jsp flushFieldAndFKMetaData
Refresh menu items flushMenu.jsp flushMenu
Refresh messages flushMessaging.jsp flushMessaging
Refresh navigation keys flushNavigationInfo.jsp flushNavigationInfo
Refresh portals and zones flushPortalMetaInfo.jsp flushPortalMetaInfo
Refresh screen style sheets flushUI_XSLs.jsp flushUIXSLs
Refresh security flushSystemLoginInfo.jsp flushSystemLoginInfo
Refresh specific drop-down data flushDropDownField.jsp flushDropDownField

Note:

It is recommended that the Refresh all cache is used for non-production and production systems. The other commands are designed for primarily for development use only. Refer to the Oracle Utilities SDK documentation for more information about the options available with the commands.

Note:

When using these commands, the cache will be reloaded over time with fresh data. As the data is loaded there is a negligible delay in each transaction that reloads data into the cache for the first time. Therefore, it is recommended not to execute this command frequently.

Client Cache

In addition to the server cache, information is cached on each user browser. After clearing the cache that’s maintained on the web application server, it is recommended to also clear the cache that is maintained on the client browser (if possible). To do this, follow the following steps:

Browser Steps
Mozilla Firefox
  • Select Tools from your browser menu bar.
  • Click Options on the Tools menu.
  • Select the Advanced tab from the Options dialog.
  • Select the Network tab from the Advanced dialog.
  • Click Clear Now.
  • Enter the standard product URL to re-invoke the application.
Google Chrome/Microsoft Edge
  • Select the Tools menu from the left size of the Address bar.
  • Click Settings on the Tools menu.
  • Navigate to Privacy and Security.
  • Select Clear browsing data.

Note:

Each user’s cache is automatically refreshed as controlled by the maxAge and maxAgeI parameters in the web application server web.xml configuration file (see Web Application Server Configuration Files for details). We recommend that you set this parameter to 1 second on development / test environments and 28800 seconds (8 hours) on production environments.