3.2 Configuring the OSGi Framework

This section provides information about configuring the OSGi framework by updating the following files in the $GW_HOME/configuration directory:

Table 3.1. OSGi Framework Configuration Files

Property FileDescription
config.ini Configures the OSGi framework properties.
java6-server.profile Configures the OSGi framework profile.

Configuring OSGi Framework Properties

You specify the framework properties in the $GW_HOME/configuration/config.ini file. The properties relevant to users are described in the following table.

Table 3.2. Framework Properties

PropertyDescription
osgi.bundles The comma-separated list of bundles which are automatically installed and optionally started once the system is up and running.
osgi.java.profile Specifies the profile to use using a file: URI with default value file:configuration/java6-server.profile.
osgi.bundlefile.limit Specifies a limit on the number of jar files the framework will keep open. The minimum value allowed is 10. Any value less than 10 will disable the bundle file limit, making the the number of jar files the framework keeps open unlimited. By default the value is 100. Increase the default value if you have many jar files in the bundle class path, expect a lot of file system operations etc.

Configuring OSGi Framework Profile

You specify the framework profile in the $GW_HOME/configuration/java6-server.profile file. The properties relevant to users are described in the following table.

WARNING: We advise you not to change the framework profile unless you are sure you know exactly what you are doing; updating the profile could cause GW to fail.

Table 3.3. Framework Profile Properties

PropertyDescription
org.osgi.framework.bootdelegation

This property specifies the packages which are loaded by delegation to the application class loader. Bundles can load classes belonging to these packages without importing the packages. The .* wildcard matches any package suffix. java.* is always boot delegated and must not be specified in this property. Note that the ordering of the packages does not matter.

org.osgi.framework.system.packages

This property specifies the packages which are exported by the system bundle.

It is very occasionally necessary to extend the set, for example when configuring email logging appenders since the implementation of javax.mail is intimately related to the implementation of javax.activation.