B Java ME Embedded Properties

This appendix documents the configurable options that are found in many ports of the Oracle Java ME Embedded product. System properties in the Oracle Java ME Embedded distribution can be configured in one of two ways: by modifying the jwc_properties.ini file (if available), or by using the VM proxy command-line interface (CLI).

Modifying the Properties File

Most platforms have a jwc_properties.ini file that can be modified with a text editor. The jwc_properties.ini file has two distinct sections:

  • [application]

    Properties that are used by Java applications that are running on the board.

  • [internal]

    Properties used for internal system configuration.

In addition, each jwc_properties.ini file contains comments that help describe the purpose of each entry.

It is highly recommend that you read through the original jwc_properties.ini file for your target embedded board, as it contains essential information about each property. Note that the Oracle Java ME Embedded runtime may alter the values inside of the jwc_properties.ini file at any time (especially if the set-property and save-properties commands are issued in the CLI), and typically without comments, so it helps to study the original version that comes with each distribution bundle.

Using the Command-Line Interface

In addition to specifying properties in the jwc_properties.ini file, system properties can also be modified on the fly using the CLI set-property command. The set-property command uses the following syntax:

set-property <key> <value>

If you wish to examine the current value of any property, use the get-property command.

get-property <key>

Note that after any property change, the VM state is unpredictable, and it is necessary to issue the save-properties command and 'shutdown -r' (or, depending on the embedded board, cycle the power) to activate the changes. See Chapter 2 for more information on using the VM proxy CLI.

The list of configurable system properties differs extensively on each platform and with each release, and may be retrieved by issuing the following command via the CLI proxy:

> properties-list

For example, the properties list that is generated for the Raspberry Pi would look similar to the following:

read only       STRING  xml.rpc.subset.version = 1.0
read/write      STRING  xml.jaxp.subset.version = 1.0
read/write      BOOL    vmconfig.system_reboot = false
read only       STRING  system.storage_root = ../appdb
read/write      BOOL    system.network.reconnect = false
read/write      INT     system.jam_space = 4096000
read only       STRING  system.default_storage = ../appdb
read only       STRING  socket = com.sun.midp.io.j2me.socket.ProtocolPushImpl
read/write      STRING  security.providers.jar = null
...
(several lines omitted)
...
read/write      INT     AMS_MEMORY_LIMIT_MVM = -1