+

Search Tips   |   Advanced Search

Application binary settings


To configure the location and distribution of application binary files, from admin console, click...

Applications | Application Types | WebSphere enterprise apps | application_name | Application binaries

If an application is running, changing an application setting causes the application to restart. On stand-alone servers, the application restarts after you save the change. On multiple-server products, the application restarts after you save the change and files synchronize on the node where the application is installed. To control when synchronization occurs on multiple-server products, deselect Synchronize changes with nodes on the Console preferences page.

Location (full path)

Directory to which the enterprise application archive (EAR) file is installed. This Location setting is the same as the Directory to install application field on the application installation and update wizards.

By default, an EAR file is installed in the...

$PROFILE_ROOT/installedApps/cell_name/application_name.ear

Set options include the following:

  • 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

  • Specify a directory.

    If we specify a directory, the application is installed in specified_path/application_name.ear directory. A directory having the EAR file name of the application being installed is appended to the path specified for...

    Directory to install application

    ...when installing the application. For example, if we installed Clock.ear and specify C:/myapps on Windows machines, 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 specify the ${CELL} variable. Specifying the ${CELL} variable ensures that the destination directory has the current cell name, and not the original cell name.

    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 dmgr 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 that is 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 the location...

    ${APP_INSTALL_ROOT}/network_cell_name

    ...upon running the addNode operation, explicitly specify the installation directory as...

    ${APP_INSTALL_ROOT}/${CELL}

    ...during installation. 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 want to install the exported EAR file in a different cell or location, specify...

    ${APP_INSTALL_ROOT}/cell_name/application_name.ear

    ...if we 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 you specify a different value, 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 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 you want 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 we 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}. 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 panel...

    Environment | WebSphere variables

Data type String
Units Full path name

Use configuration information in binary

Whether the appserver uses the binding, extensions, and deployment descriptors located with the application deployment document, deployment.xml (default), or those located in the EAR file.

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 setting is the same as the field...

Use binary configuration

...on the application installation and update wizards. Select this setting for applications installed on 6.x or later deployment targets only. This setting is not valid for applications installed on 5.x deployment targets.

Data type Boolean
Default false

Enable binary distribution, expansion and cleanup post uninstallation

Whether WAS 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 installations, the binaries are deleted when you uninstall and save changes to the configuration.

On multiple-server installations, the binaries are deleted when you uninstall and save changes to the configuration and synchronize changes.

If we disable this option, then verify the application binaries are expanded appropriately in the destination directories of all nodes where the application runs.

If we disable this option and you 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.

This Enable binary distribution, expansion and cleanup post uninstallation setting is the same as the Distribute application field on the application installation and update wizards.

Data type Boolean
Default true

File permissions

Specifies access permissions for application binaries for installed applications that are expanded to the directory specified.

The Enable binary distribution, expansion and cleanup post uninstallation 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.


Table 1. File permission string sets for list options

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 JSPs), 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 WAS ND 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: Using regular expressions for file matching pattern compares an entire string URI against the specified file permission pattern. You must 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:bprac


Table 2. Example URIs for file permission operations

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 specify 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

[Windows]

We cannot unset read permission on a file on Windows platforms. 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 platform 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 platforms. 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 permission field on the application installation and update wizards.

Data type String

Application build level

Uneditable string that identifies the build version of the application.

Data type String





 

Related tasks

Set enterprise application files
Deploy enterprise apps

 

Related

Enterprise application settings