Select installation options settings
To specify options for the installation of a Java EE application onto a WAS deployment target....
Applications | New application | New Enterprise Application
...and then specify values as needed for the application on the Preparing for application installation pages.
Default values for the options are used if we do not specify a value. After application installation, we can specify values for many of these options from an enterprise application settings page.
The Select installation options page is the same for the application installation and update wizards.
Precompile JSPs files
Specify whether to precompile JSPs as a part of installation. The default is not to precompile JSP files.
For this option, install only onto a v8.5 deployment target.
If we select Precompile JSPs files and try installing the application onto an earlier deployment target such as Version 7, the installation is rejected. We can deploy applications to only those deployment targets that have same version as the product. If applications are targeted to servers that have an earlier version than the product, then we cannot deploy to those targets.
Information Value Data type Boolean Default false
Directory to install application
Directory to which the EAR file will be installed. By default, the EAR file is installed in...
profile_root/installedApps/cell_name/application_name.ear
Do not specify a value and leave the field empty.
The default value is...
${APP_INSTALL_ROOT}/cell_name
...where the ${APP_INSTALL_ROOT} variable is...
profile_root/installedApps
A directory having the EAR file name of the application being installed is appended to...
${APP_INSTALL_ROOT}/cell_name
Thus, if we do not specify a directory, the EAR file is installed in...
profile_root/installedApps/cell_name/application_name.ear
If we specify a directory for Directory to install application, the application is installed in...
specified_path/application_name.ear
A directory having the EAR file name of the application being installed is appended to the path specified for Directory to install application. For example, if you are installing Clock.ear and specify C:/myapps on Windows computers, the application is installed in the myapps/Clock.ear directory. The ${APP_INSTALL_ROOT} variable is set to the specified path.
For the initial installation of the application, specify.
${APP_INSTALL_ROOT}/${CELL}
If we intend to export the application from one cell and later install the exported application on a different cell, specify the ${CELL} variable for the initial installation of the application. For example, specify...
${APP_INSTALL_ROOT}/${CELL}
Exporting the application creates an enhanced EAR file that has the application and its deployment configuration. The deployment configuration retains the cell name of the initial installation in the destination directory unless specified the ${CELL} variable. Specifying the ${CELL} variable ensures that the destination directory has the current cell name, and not the original cell name.
Important: If an installation directory is not specified when an application is installed on a single-server configuration, the application is installed in...
${APP_INSTALL_ROOT}/cell_name
When the server is made a part of a multiple-server configuration (using the addNode utility), the cell name of the new configuration becomes the cell name of the deployment manager node. If the -includeapps option is used for the addNode utility, then the applications that are installed prior to the addNode operation still use the installation directory...
${APP_INSTALL_ROOT}/cell_name
However, an application installed after the server is added to the network configuration uses the default installation directory...
${APP_INSTALL_ROOT}/network_cell_name
To move the application to...
${APP_INSTALL_ROOT}/network_cell_name
....location upon running the addNode operation, during installation, explicitly specify the installation directory as...
${APP_INSTALL_ROOT}/${CELL}
In such a case, the application files can always be found under ${APP_INSTALL_ROOT}/current_cell_name.
If the application has been exported and you are installing the exported EAR file in a different cell or location, specify...
${APP_INSTALL_ROOT}/cell_name/application_name.ear
...if you did not specify...
${APP_INSTALL_ROOT}/${CELL}
...for the initial installation.
The exported EAR file is an enhanced EAR file that has the application and its deployment configuration. The deployment configuration retains the value for Directory to install application that was used for the previous installation of the application. Unless specified a different value for Directory to install application for this installation, the enhanced EAR file will be installed to the same directory as for the previous installation.
If we did not specify the ${CELL} variable during the initial installation, the deployment configuration uses the cell name of the initial installation in the destination directory. If we are installing on a different cell, specify...
${APP_INSTALL_ROOT}/cell_name/application_name.ear
...where cell_name is the name of the cell to which to install the enhanced EAR file. If we do not designate the current cell name, cell_name will be the original cell name even though you are installing the enhanced EAR file on a cell that has a different name.
Specify an absolute path or a use pathmap variable.
We can specify an absolute path or use a pathmap variable such as ${MY_APPS}. We can use a pathmap variable in any installation.
A pathmap variable is particularly needed when installing an application on a cluster with members on heterogeneous nodes because, in such cases, there might not be a single way to specify an absolute path. A WAS variable ${CELL} that denotes the current cell name can also be in the pathmap variable; for example, ${MY_APP}/${CELL}. We can define WAS variables on the WebSphere variables page, accessed by clicking...
Environment > WebSphere variables
Avoid trouble: In a distributed operating system environment, the scope of the pathmap variable starts from the nodeagent-level scope instead of from a server-level scope. If the variable is not found in the nodeagent-level scope, then the variable is looked up in the node-level scope and finally in the cell-level scope.
This Directory to install application field is the same as the Location (full path) setting on an Application binaries page.
Information Value Data type String Units Full path name
Distribute application
Whether the product expands application binaries in the installation location during installation and deletes application binaries during uninstallation. The default is to enable application distribution. Application binaries for installed applications are expanded to the directory specified.
On single-server products, the binaries are deleted when you uninstall and save changes to the configuration.
On multiple-server products, the binaries are deleted when you uninstall and save changes to the configuration and synchronize changes.
If we disable this option, then you must ensure that the application binaries are expanded appropriately in the destination directories of all nodes where the application runs.
Avoid trouble: If we disable this option and we do not copy and expand the application binaries to the nodes, a later saving of the configuration or manual synchronization does not move the application binaries to the nodes for you.gotcha
This Distribute application field is the same as the Enable binary distribution, expansion and cleanup post uninstallation setting on an Application binaries page.
Information Value Data type Boolean Default true
Use binary configuration
Whether the application server uses the binding, extensions, and deployment descriptors located with the application deployment document, the deployment.xml file (default), or those located in the EAR file. Select this setting for applications installed on Version 6.0 or later deployment targets only.
The default (false) is to use the binding, extensions, and deployment descriptors located in deployment.xml. To use the binding, extensions, and deployment descriptors located in the EAR file, enable this setting (true).
This Use binary configuration field is the same as the Use configuration information in binary setting on an Application binaries page.
Information Value Data type Boolean Default false
Deploy enterprise beans
Whether the EJBDeploy tool runs during application installation.
The tool generates code needed to run EJB files. We must enable this setting in the following situations:
- The EAR file was assembled using an assembly tool such as Rational Application Developer and the EJBDeploy tool was not run during assembly.
- The EAR file was not assembled using an assembly tool such as Rational Application Developer.
- The EAR file was assembled using versions of the Application Assembly Tool (AAT) previous to Version 5.0.
If an EJB module is packaged in a web archive (WAR), we do not need to enable this setting.
The EJB deployment tool runs during installation of EJB 1.x or 2.x modules. The EJB deployment tool does not run during installation of EJB 3.x modules.
For this option, install only onto a v8.5 deployment target.
If we select Deploy enterprise beans and try installing the application onto an earlier deployment target such as Version 7, the installation is rejected. We can deploy applications to only those targets that have same WebSphere version as the product. If applications are targeted to servers that have an earlier version than the product, then we cannot deploy to those targets.
Also, if you select Deploy enterprise beans and specify a database type on the Provide options to perform the EJB Deploy page, previously defined backend IDs for all of the EJB modules are overwritten by the chosen database type. To enable backend IDs for individual EJB modules, set the database type to "" (null) on the Provide options to perform the EJB Deploy page.
Enable this setting might cause the installation program to run for several minutes.
Information Value Data type Boolean Default true (false for EJB 3.0 modules)
Application name
Logical name for the application. An application name must be unique within a cell and cannot contain an unsupported character.
An application name cannot begin with a period (.), cannot contain leading or trailing spaces, and cannot contain any of the following characters:
Unsupported characters ⁄ forward slash $ dollar sign ' single quote mark \ backslash = equal sign " double quote mark * asterisk % percent sign | vertical bar , comma + plus sign < left angle bracket : colon @ at sign > right angle bracket ; semi-colon # hash mark & ampersand (and sign) ? question mark ]]> No specific name exists for this character combination This Application name field is the same as the Name setting on an Enterprise application settings page.
Information Value Data type String
Create MBeans for resources
Whether to create MBeans for resources such as servlets or JSP files within an application when the application starts. The default is to create MBeans.
This field is the same as the Create MBeans for resources setting on a Startup behavior page.
Information Value Data type Boolean Default true
Override class reloading settings for web and EJB modules
Whether the product run time detects changes to application classes when the application is running. If this setting is enabled and if application classes are changed, then the application is stopped and restarted to reload updated classes.
The default is not to enable class reloading.
This field is the same as the Override class reloading settings for web and EJB modules setting on a Class loading and update detection page.
Information Value Data type Boolean Default false
Reload interval in seconds
Number of seconds to scan the application's file system for updated files. The default is the value of the reloading interval attribute in the IBM extension (META-INF/ibm-application-ext.xmi) file of the EAR file.
The reloading interval attribute takes effect only if class reloading is enabled.
To enable reloading, specify a value greater than zero (for example, 1 to 2147483647). To disable reloading, specify zero (0). The range is from 0 to 2147483647.
This Reload interval in seconds field is the same as the Polling interval for updated files setting on a Class loading and update detection page.
Information Value Data type Integer Units Seconds Default 3 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. sptcfg
Deploy web services
Whether the web services deploy tool wsdeploy runs during application installation.
The tool generates code needed to run applications using web services. The default is not to run the wsdeploy tool. We must enable this setting if the EAR file contains modules using web services and has not previously had the wsdeploy tool run on it, either from the Deploy menu choice of an assembly tool or from a command line.
For this option, install only onto a v8.5 deployment target.
If we select Deploy web services and try installing the application onto an earlier deployment target, the installation is rejected. We can deploy applications to only those targets that have same version as the product. If applications are targeted to servers that have an earlier version than the product, then we cannot deploy to those targets.
Information Value Data type Boolean Default false
Validate input off/warn/fail
Whether the product examines the application references specified during application installation or updating and, if validation is enabled, warns you of incorrect references or fails the operation.
An application typically refers to resources using data sources for container managed persistence (CMP) beans or using resource references or resource environment references defined in deployment descriptors. The validation checks whether the resource referred to by the application is defined in the scope of the deployment target of that application.
Select off for no resource validation, warn for warning messages about incorrect resource references, or fail to stop operations that fail as a result of incorrect resource references.
This Validate input off/warn/fail field is the same as the Application reference validation setting on an Enterprise application settings page.
Information Value Data type String Default warn
Process embedded configuration
Whether the embedded configuration should be processed. An embedded configuration consists of files such as resource.xml, variables.xml, and deployment.xml. We can collect WAS-specific deployment information and store it in the application EAR file. Such an EAR file can then be installed into a WAS configuration, using application management interfaces described in the topic, Installing an application through programming
One such application EAR file is an enhanced EAR file, which is created when you export an already installed application. The embedded configuration check box identifies such an enhanced EAR file. By default, the check box for "process embedded configuration" is checked if the application is detected to be an enhanced EAR. The application install options are prepopulated with the information from the embedded configuration whether the check box for "process embedded configuration" is checked or not. Users can overwrite these values during the deployment process.
If the exported EAR file (enhanced EAR file) contains shared libraries and their configuration information, then the process of installing the application is sensitive to whether we have checked the check box for "process embedded configuration" or not. If the check box is checked for an application with shared library configuration defined, the application is installed with those shared libraries and are configured based on the information in the embedded configuration. If the check box is NOT checked for an application with shared library configuration defined, the EAR file is still installed without those shared libraries and their configurations.
The embedded configuration is still part of the application whether it is processed or not.
The shared lib definition does not remain even if disabling the process embedded configuration option on WAS v8.5.
If we exported the application from a cell other than the current cell and did not specify the $(CELL) variable for Directory to install application when first installing the application, deselect this setting (false) to expand the enhanced EAR file in...
profile_root/installedApps/current_cell_name
Otherwise, if this setting is selected (true), the enhanced EAR file is expanded in...
profile_root/installedApps/original_cell_name
...where original_cell_name is the cell on which the application was first installed. If we specified the $(CELL) variable for Directory to install application when you first installed the application, installation expands the enhanced EAR file in...
profile_root/installedApps/current_cell_name
Information Value Data type Boolean Default false (deselected)
File permission
Specifies access permissions for application binaries for installed applications that are expanded to the directory specified.
The Distribute application option must be enabled to specify file permissions.
We can specify file permissions in the text field. We can also set some of the commonly used file permissions by selecting them from the multiple-selection list. List selections overwrite file permissions set in the text field.
We can set one or more of the following file permission strings in the list. Selecting multiple options combines the file permission strings.
sets for list options. Select a list option or specify
Multiple-selection list option File permission string set Allow all files to be read but not written to .*=755 Allow executables to execute .*\.dll=755#.*\.so=755#.*\.a=755#.*\.sl=755 Allow HTML and image files to be read by everyone .*\.htm=755#.*\.html=755#.*\.gif=755#.*\.jpg=755 Instead of using the multiple-selection list to specify file permissions, we can specify a file permission string in the text field. File permissions use a string that has the following format:
file_name_pattern=permission#file_name_pattern=permission
where file_name_pattern is a regular expression file name filter (for example, .*\\.jsp for all JSP files), permission provides the file access control lists (ACLs), and # is the separator between multiple entries of file_name_pattern and permission. If # is a character in a file_name_pattern string, use \# instead.
If multiple file name patterns and file permissions in the string match a uniform resource identifier (URI) within the application, then the product uses the most stringent applicable file permission for the file. For example, if the file permission string is .*\\.jsp=775#a.*\\.jsp=754, then the abc.jsp file has file permission 754.
Best practice: Use regular expressions for file matching pattern compares an entire string URI against the specified file permission pattern. Provide more precise matching patterns using regular expressions as defined by Java programming API. For example, suppose the following directory and file URIs are processed during a file permission operation:best-practices
URIs for file permission operations. Results are shown
Number Example URL 1 /opt/WebSphere/profiles/AppSrv01/installedApps/MyCell/MyApp.ear/MyWarModule.war 2 /opt/WebSphere/profiles/AppSrv01/installedApps/MyCell/MyApp.ear/MyWarModule.war/MyJsp.jsp 3 /opt/WebSphere/profiles/AppSrv01/installedApps/MyCell/MyApp.ear/MyWarModule.war/META-INF/MANIFEST.MF 4 /opt/WebSphere/profiles/AppSrv01/installedApps/MyCell/MyApp.ear/MyWarModule.war/WEB-INF/classes/MyClass.class 5 /opt/WebSphere/profiles/AppSrv01/installedApps/MyCell/MyApp.ear/MyWarModule.war/mydir/MyClass2.class 6 /opt/WebSphere/profiles/AppSrv01/installedApps/MyCell/MyApp.ear/MyWarModule.war/META-INF The file pattern matching results are:
- MyWarModule.war does not match any of the URIs
- .*MyWarModule.war.* matches all URIs
- .*MyWarModule.war$ matches only URI 1
- .*\\.jsp=755 matches only URI 2
- .*META-INF.* matches URIs 3 and 6
- .*MyWarModule.war/.*/.*\.class matches URIs 4 and 5
If we specify a directory name pattern for File permissions, then the directory permission is set based on the value specified. Otherwise, the File permissions value set on the directory is the same as its parent. For example, suppose we have the following file and directory structure:
/opt/WebSphere/profiles/AppSrv01/installedApps/MyCell/MyApp.ear/MyWarModule.war/MyJsp.jsp
and specified the following file pattern string:
.*MyApp.ear$=755#.*\.jsp=644
The file pattern matching results are:
- Directory MyApp.ear is set to 755
- Directory MyWarModule.war is set to 755
- Directory MyWarModule.war is set to 755
Best practice: Regardless of the operation system, always use a forward slash (/) as a file path separator in file patterns.best-practices
We cannot unset read permission on a file on Windows operating systems. With POSIX style permission bits, the bit for denoting readable on a file is 4, writable is 2, and executable is 1. Thus, permission of a file on a Windows operating system is either 5 or 7. Also, in POSIX style there are user, group and world permissions. We can only set the user permission for a file on Windows operating systems. The group and world permission bits are ignored.
Access permissions specified here are at the application level. We can also specify access permissions for application binaries in the node-level configuration. The node-level file permissions specify the maximum (most lenient) permissions that can be given to application binaries. Access permissions specified here at application level can only be the same as or more restrictive than those specified at the node level.
This setting is the same as the File permissions field on the Application binaries page.
Information Value Data type String
Application build identifier
Specifies an uneditable string identifying build version of the application.
This Application build identifier field is the same as the Application build level field on the Application binaries page.
Information Value Data type String
Allow dispatching includes to remote resources
Whether an application can dispatch includes to resources across web modules that are in different Java virtual machines in a managed node environment through the standard request dispatcher mechanism.
This field is the same as the Allow dispatching includes to remote resources field on the Remote request dispatch properties page.
Information Value Data type Boolean Default false
Allow servicing includes from remote resources
Whether an enterprise application can service an include request from an application.
This field is the same as the Allow servicing includes from remote resources field on the Remote request dispatch properties page.
Information Value Data type Boolean Default false
Business-level application name
Whether the product creates a new business-level application with the enterprise application that you are installing or makes the enterprise application a composition unit of an existing business-level application.
The default is to create a new business-level application with a setting value of WebSphere:blaname=Anyasset,blaedition=BASE. When you select to create a new business-level application from the drop-down list, the product creates a business-level application that has the same name as the enterprise application. If a business-level application with the name of the enterprise application exists already, the product does not create a new business-level application; it adds your enterprise application as a composition unit to that existing business-level application.
If use the Shared library relationship and mapping settings page to specify dependency relationships on existing shared libraries in the business-level application, select the business-level application name from the drop-down list. No shared libraries are shown in the page if you choose to create a new business-level application and a business-level application with the default name exists already.
To add the enterprise application to an existing business-level application, select an existing business-level application from the drop-down list. The product makes the enterprise application a composition unit of the existing business-level application.
Information Value Data type String Default Create a new business-level application that has the same name as the enterprise application that you are installing. WebSphere:blaname=Anyasset,blaedition=BASE
Asynchronous request dispatch type
Whether web modules can dispatch requests concurrently on separate threads and, if so, whether the server or client dispatches the requests. Concurrent dispatching can improve servlet response time.
If operations are dependant on each other, do not enable asynchronous request dispatching. Select Disabled. Concurrent dispatching might result in errors when operations are dependant.
Select Server side to enable the server to dispatch requests concurrently. Select Client side to enable the client to dispatch requests concurrently.
Information Value Data type String Default Disabled
Allow EJB reference targets to resolve automatically
Whether the product assigns default JNDI values for or automatically resolves incomplete EJB reference targets.
Select this option to enable EJB reference targets to resolve automatically if the references are from EJB 2.1 or earlier modules or from Web 2.3 or earlier modules. If we enable this option, the runtime container provides a default value or automatically resolves the EJB reference for any EJB reference that does not have a binding.
If we selected Generate default bindings on the Preparing for application installation page, then we do not need to select this option. The product generates default values.
If we select Allow EJB reference targets to resolve automatically, all modules in the application must share one deployment target. If we select this option and all of the application modules do not share a common server, after you click Finish on the Summary page, the product displays a warning message and does not install the application. We must deselect this setting before you click Finish to install the application.
Information Value Data type Boolean Default false
Deploy client modules
Whether to deploy client modules.
Select this option (set to true) if the file to deploy has one or more client modules and to configure environment entries for the client modules. Also select this option to configure resources such as EJB references, resource references, resource environment references, or message destination references. Selecting this option enables you to view the Map environment entries for client modules page. If we are deploying the client modules to a federated node of a deployment manager (Federated) or to an application server (Server Deployed), select this option and set Client deployment mode to the appropriate value for the deployment target, Federated or Server Deployed.
If we select this option, install the client modules only onto a Version 8.0 or later deployment target.
Information Value Data type Boolean Default false
Client deployment mode
Whether to deploy client modules to an isolated deployment target (Isolated), a federated node of a deployment manager (Federated), or an application server (Server Deployed).
The choice of client deployment mode affects how java: lookups are handled. All Java URL name spaces (global, application, module, and component) are local in isolated client processes. The name spaces reside on a server in federated and server deployed client processes. The server or cluster chosen as a target for a client module determines where those name spaces are created. All java: lookups for federated or server deployed client modules are directed to the target server or cluster. The client module does not actually run in the target server or cluster. Multiple instances of the same client module will all share the component name space in the Federated and Server Deployed modes. Choosing the Federated mode is simply a declaration of intent to launch the client module using Java Network Launching Protocol (JNLP), but the Java Naming and Directory Interface (JNDI) mechanics of federated and server deployed modes are the same.
Information Value Data type String Default Isolated
Validate schema
Whether to validate the deployment descriptors against published Java EE deployment descriptor schemas. When this option is selected, the product analyzes each deployment descriptor to determine the Java EE specification version for the deployment descriptor, selects the appropriate schema, and then checks the deployment descriptor against the Java EE deployment descriptor schema. Validation errors result in error messages.
A Java EE deployment descriptor schema is also known as a DTD.
If we select this option, install the application or module only onto a Version 8.0 or later deployment target.
Information Value Data type Boolean Default false
Related concepts
Enterprise (Java EE) applications Installable enterprise module versions Development and assembly tools
Related tasks
Install enterprise application files with the console Export enterprise applications
Preparing for application installation settings
Remote dispatcher property settings Object names: What the name string cannot contain wsdeploy command