WebSphere variables are name and value pairs that are used to provide settings for any of the string data type attributes that are used to configure the product. After a variable is defined, the symbolic name that is specified for that variable can be specified in the Value field of any other configuration field for the product that accepts a string value.
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.
sptcfgThe value of a configuration attribute can contain references to one or more variables. The syntax for such an attribute is the name of the variable, enclosed in either a pair of curly braces { } or a pair of parenthesis ( ). In either case, the variable is proceeded by the dollar sign.
For Microsoft® Windows® operating systems, the specified file paths are prefixed wth /Program Files.
Configuration attribute consists of: | Configuration attribute value | Variable name | Second variable value | Third variable value | Fourth variable value | Expanded configuration attribute value |
---|---|---|---|---|---|---|
String literal | /IBM/WebSphere/AppServer | N/A | N/A | N/A | N/A | /IBM/WebSphere/AppServer |
Variable reference | $(WAS_ INSTALL_ ROOT) | WAS_ INSTALL_ ROOT | /IBM/WebSphere/AppServer | N/A | N/A | /IBM/WebSphere/AppServer |
Variable reference with a string literal | $(USER_ INSTALL_ ROOT)/temp | USER_ INSTALL_ ROOT | N/A | N/A | /IBM/WebSphere/AppServer/profiles/AppSrv01 | /IBM/WebSphere/AppServer/profiles/AppSrv01/temp |
Indirect variable reference with a string literal | $(WAS_ INSTALL_ ROOT)/lib | WAS_ INSTALL_ ROOT | $(MY_INSTALL_ ROOT) | MY_INSTALL_ ROOT | N/A | N/A |
Nested variable references with string literal (Example 1) | $(${INSTALL_ TYPE}_ INSTALL_ ROOT)/lib | INSTALL_ TYPE | USER | USER_INSTALL_ ROOT | /IBM/WebSphere/AppServer/profiles/AppSrv01 | /IBM/WebSphere/AppServer/profiles/AppSrv01/lib |
Nested variable references with string literal (Example 2) | $(${INSTALL_ TYPE}_ INSTALL_ ROOT)/lib | INSTALL_ TYPE | WAS | WAS_INSTALL_ ROOT | /IBM/WebSphere/AppServer/AppServer | /IBM/WebSphere/AppServer/AppServer/lib |
During the configuration process, whenever a variable is encountered as the value for a configuration attribute, a variable expansion is performed on that variable. A variable expansion is the process of recursively replacing variable references with variable values until only a string literal remains as the value for the configuration attribute. If the expansion process encounters a variable that is not properly defined, the expansion of that variable stops and a VariableExpansionException exception is issued. The product configuration process continues. However, processing errors might occur because the value for this configuration attribute is not properly established.
Input value | Value after expansion |
---|---|
$ | $ |
$$ | $ |
$$$ | $$ |
$$$$ | $$ |
$$$$$ | $$$ |