Introduction: Variables

Variables come in many varieties. They are used to control settings and properties relating to the server environment. The three main types of variables that you should understand are environment variables, WebSphere® variables, and custom properties.

Environment variables

Environment variables, also called native environment variables, are not specific to WebSphere Application Server and are defined by other elements, such as UNIX, Language Environment® (LE), or third-party vendors, among others. Some of the UNIX-specific native variables are LIBPATH and STEPLIB. These variables tend to be operating system-specific.

[AIX Solaris HP-UX Linux Windows][IBM i]Environment variables can also be specified as an application server environment entry. To specify an environment variable as an environment entry, in the administrative console, click Servers > Server Types > WebSphere application serversserver_name. Then, under Server Infrastructure, click Java process management > Process definition > Environment entries.

[z/OS]Environment variables can also be specified as a servant custom property. To specify an environment variable as a servant custom property, in the administrative console, click Servers > Server Types > WebSphere application serversserver_name. Then, under Server Infrastructure, click Java process management > Process definition, select either Control, Servant, or Adjunct, and then click Environment entries. This path is also used to set environment variables that control the collection of application server and Web container information in z/OS® System Management Facility (SMF) records.

WebSphere variables

WebSphere variables are name and value pairs that are used to provide settings for any of the string data type attributes contained in one of the XML formatted configuration files that reside in the product repository. After a variable is defined, the value specified for the variable replaces the variable name whenever the variable name is encountered during configuration processing.

WebSphere variables can be used to configure:
  • WebSphere Application Server path names, such as JAVA_HOME, and APP_INSTALL_ROOT
  • A path value for the extendedDocumentRoot JSP or file serving attribute. This capability enables you to add an application to each node in a clustered environment without modifying the ibm-web-ext.xmi file for that application on each node.
    Supported configurations: For IBM® extension and binding files, the .xmi or .xml file name extension is different depending on whether you are using a pre-Java EE 5 application or module or a Java™ EE 5 or later application or module. An IBM extension or binding file is named ibm-*-ext.xmi or ibm-*-bnd.xmi where * is the type of extension or binding file such as app, application, ejb-jar, or web. The following conditions apply:
    • For an application or module that uses a Java EE version prior to version 5, the file extension must be .xmi.
    • For an application or module that uses Java EE 5 or later, the file extension must be .xml. If .xmi files are included with the application or module, the product ignores the .xmi files.

    However, a Java EE 5 or later module can exist within an application that includes pre-Java EE 5 files and uses the .xmi file name extension.

    The ibm-webservices-ext.xmi, ibm-webservices-bnd.xmi, ibm-webservicesclient-bnd.xmi, ibm-webservicesclient-ext.xmi, and ibm-portlet-ext.xmi files continue to use the .xmi file extensions.

  • Certain cell-wide customization values
  • [z/OS]The location service for the z/OS platform.

To create or modify a WebSphere variable, in the administrative console click Environment > WebSphere variables.

A variable can apply to a cell, a cluster, a node, or a server.

How the variable is set determines its scope. If the variable is set:
  • At the server level, it applies to the entire server.
  • At the node level, it applies to all servers in the node, unless you set the same variable at the server level. In that case, for that server, the setting that is specified at the server level overrides the setting that is specified at the node level.
  • At the cell level, it applies to all nodes in that cell, unless you set the same variable at the node or server level.
    • If you set the same variable at the server level, for that server, the setting that is specified at the server level overrides the setting that is specified at the cell level.
    • If you set the same variable at the node level, for all servers in that node, the setting that is specified at the node level overrides the setting that is specified at the cell level.

Custom properties

Custom properties are property settings meant for a specific functional component. Any configuration element can have a custom property. Common configuration elements are cell, node, server, web container, and transaction service. A limited number of supported custom properties are available and these properties can be set in the administrative console using the custom properties link that is associated with the functional component.

For example, to set web container custom properties, click Servers > Server Types > WebSphere application servers > server_name, and then, in the Container settings section, click Web container > Custom properties

Custom properties set from the web container custom properties page apply to all transports that are associated with that web container; custom properties set from one of the web container transport chain or HTTP transport custom properties pages apply only to that specific HTTP transport chain or HTTP transport. If the same property is set on both the web container page and either a transport chain or HTTP transport page, the settings on the transport chain or HTTP transport page override the settings that are defined for the web container for that specific transport.