About this task
By default, the "dropins" directory is automatically
monitored. If you drop an application into this directory, the application
is automatically deployed on the server. Similarly, if the application
is deleted from the directory, the application is automatically removed
from the server. The "dropins" directory can be used for applications
that do not require additional configuration, such as security role
mapping. If you put your applications in the "dropins" directory,
you must not include an entry for the application in the server configuration.
Otherwise, the server will try to load the application twice and an
error might error. For applications that are not in the "dropins" directory,
you specify the location using an application entry in the server
configuration. The location can be on the file system or at a URL.
Your
application can be packaged as an archive file or as a directory.
For applications in the "dropins" directory, the file name and
file extension are used by the application monitor to determine the
type of application, and to generate the application name and the context-root for
web applications. For example, if the archive file or directory is
named snoop.war, the application monitor assumes
that the application is a web application, that the application name
is "snoop", and that the context-root is also snoop.
For configured applications, you specify the application type and
name, and if the application is a web application, the application
name is also used as the context-root.
For
more information about the default directory structure and the properties
that are associated with directories (for example server.config.dir),
see Liberty profile: Directory locations and properties.
- Deploy an application by dropping it into the dropins directory.
For example, using the default directory structure, to deploy
an application you drop it into the ${server.config.dir}/dropins directory
(that is, wlp/usr/servers/server_name/dropins).
The
structure of your application can be as following in the
/dropin directory:
- Place the archive file with its identifying suffix (ear, war,
and so on) directly into the /dropin directory.
For example, ${server.config.dir}/dropins/myApp.war
- Extract the archive file into a directory named with the application
name and the identifying suffix. For example, ${server.config.dir}/dropins/myApp.war/WEB-INF/...
- Place the archive file or the extracted archive into a subdirectory
named with the identifying suffix. For example, ${server.config.dir}/dropins/war/myApp/WEB-INF/...
- Deploy an application by adding it to the server configuration file.
Configure the
application element in the
server.xml configuration
file. See
Liberty profile: Configuration elements in the server.xml file.
You must configure the following attributes for the application:
- id
- Must be unique and is used internally by the server.
- name
- Must be unique and depending on the application. The value of name might
be used as the context-root of the application. For more information
on how the context-root is set for an application, see Deploying a web application to the Liberty profile.
- type
- Specifies the type of the application. The supported application
types are war, ear and eba.
- location
- Specifies the location of the application. It can be an absolute
path or a URL which you can download the application from. It can
also be the file name of your application (including file extension
if any).
If the application is available
on the file system, the location can either be the full path name
or a simple file name. If the location does not include the full path,
the application manager looks for the application in ${server.config.dir}/apps and ${shared.app.dir}.
If the application is available at a URL, the application manager
downloads the application to a temporary folder inside the server
work area, then starts the application.
Note: The location that
you specify for a configured application should not be in the "dropins" directory.
If you drop an application into the "dropins" directory, and
also specify the location in the server.xml file,
you are telling the server to deploy the application twice.
In
the following two examples, the location is the file system. If the
location is a URL, enter the URL in the location field.
<application id="ImpactEBA" name="ImpactEBA" type="eba" location="D:/apps/ImpactEBA.eba"/>
<application id="ImpactWeb" name="ImpactWeb" type="war" location="ImpactWeb.war"/>
The
second example does not include the full path. In this case, you must
put the application in one of the following locations:
- ${server.config.dir}/apps (that
is, server_directory/user/servers/server_name/apps)
- ${shared.app.dir} (that is, liberty_install_location/usr/shared/apps)
Note: - You must create the server-level apps directory,
whereas the shared apps directory is present
by default. See Liberty profile: Directory locations and properties for more information
about the properties associated with the server directories.
- The application element can be set before
or after the server has started. If the element is set after the server
has started, the changes are picked up dynamically.
- Remove an application.
For applications that
are included in the server configuration, remove the reference to
the application from the server.xml file. The
application is then automatically removed from the server.
For
applications that are deployed to the "dropins" directory, delete
the application from the directory. The application is then automatically
removed from the server.
To uninstall all applications that
are in the "dropins" directory, set the application monitor dropinsEnabled property
to false as described in Controlling dynamic updates.