Cache of Application

To use the network effectively, rather than downloading the developed application program from the distribution server every time, cache technique is used.

Types of Caches

Types of the supported caches are as follows.

Type of Cache

Description

none

Does not use cache function.

dynamic

Receives only when files in the server are renewed.

Local cache files will be reused until the renewal.

session

Receives only once when the engine starts and only uses local cache files until the engine is shut down (if it is found that server files match local cache files when the engine begins, the local cache files will be reused)

static

Only local cache files are used once the files are downloaded from the server. (Re-download will be conducted only when the versions of the Services groups registered in TypeDefinition are changed.)

If the cache level is not specified, the default cache property is applied as Dynamic.

Although the "static" cache is designed to store files in a local memory, web browsers prevent the use of a local memory. Therefore, the static mode will be replaced with the session mode if you use the HTML5 version of Nexacro Platform.

If the cache mode is set to "none" in the HTML5 version, a browser cache is supposed to be idle. However, it has been observed that Firefox uses a browser cache even under such circumstances. This case is a bug of Firefox rather than Nexacro Platform.

https://bugzilla.mozilla.org/show_bug.cgi?id=1129500

When a Nexacro Platform-based application runs on Internet Explorer (IE), the IE's cache sometimes overrides the Nexacro Platform's cache. This is because there is a limitation that JavaScript files (*.js) changed in the server will not be updated when the web browser cache option is set to "Automatically" (default).


Check for newer versions of stored pages: Automatically, or every time I visit

In the process of re-starting or refreshing a web browser, all the memory caches managed by the platform will be cleared. In this case, browser behavior will prevail under the session, dynamic and static options.

When you execute an application in the Runtime environment through Launch Project or Quick View of Nexacro Studio, caches will not be used regardless of the cachelevel settings in the Service group of TypeDefinition.

(This does not mean that the cachelevel settings are changed.)

Nexacro Platform will follow the cache settings of web browsers when processing images due to image expression features (eg. size, stretch) and the platform's performance.

(This behavior is separate from the cachelevel settings in the Service group of TypeDefinition)

Nexacro applications will not use a cache when importing or exporting Excel files by using the ExcelImportObject or ExcelExportObject object. This behavior will apply regardless of the cachelevel settings in the Service group of TypeDefinition.

Cache Application Method

cachelevel

The cache setting can be modified using our tool and will be saved in the TypeDefinition file, as shown in the below picture presenting the TypeDefinition editor.

Callout

Description

1

Cache is only applied to the service group registered here

2

You can see here that a cache is applied here to all files in the directory called “./Base/”

3

Select the type of a cache

4

When the cache type is set to "static," you can download files again by re-setting the version of the service group.

Script

application.services["Base"].set_cachelevel("none" )

checkversion

If you set the checkversion property of an application to true, you can set cached files not to be applied at the point of changing the product version or other types of versions.

When you set checkversion to true, generated codes will change partially.

You do not need to enter the value of a product version.

It will be automatically set based on the version of the installed Nexacro Studio.

<meta http-equiv="pragma" content="no-cache">  
  	<script type="text/javascript" 
		src="./nexacro14lib/framework/SystemBase.js?version=14.0.1.1210"></script>
...
  <script type="text/javascript">
    function oninitframework()
    {
		application.load("Hello_nexacro", 
			"Hello_nexacro.xadl.quickview.js?version=1.0.1");