type=page
status=published
title=enable
next=enable-http-lb-application.html
prev=disable-secure-admin-principal.html
~~~~~~
enable
======

[[enable-1]][[GSRFM00124]][[enable]]

enable
------

enables the component

[[sthref1095]]

Synopsis

[source,oac_no_warn]
----
asadmin [asadmin-options] enable [--help] 
[--target target_name] component_name
----

[[sthref1096]]

Description

The `enable` subcommand enables the specified deployed component. If the
component is already enabled, then it is re-enabled. If it has not been
deployed, then an error message is returned.

This subcommand is supported in remote mode only.

[[sthref1097]]

Options

asadmin-options::
  Options for the `asadmin` utility. For information about these
  options, see the link:asadmin.html#asadmin-1m[`asadmin`(1M)] help page.
`--help`::
`-?`::
  Displays the help text for the subcommand.
`--target`::
  This option specifies the target on which you are enabling the
  component. Valid values are: +
  `server`;;
    Enables the default server instance `server` and is the default
    value.
  domain_name;;
    Enables the named domain.
  cluster_name;;
    Enables every server instance in the cluster.
  instance_name;;
    Enables a particular clustered or stand-alone server instance.

[[sthref1098]]

Operands

component_name::
  name of the component to be enabled. +
  The name can include an optional version identifier, which follows the
  name and is separated from the name by a colon (`:`). The version
  identifier must begin with a letter or number. It can contain
  alphanumeric characters plus underscore (`_`), dash (`-`), and period
  (`.`) characters. For more information about module and application
  versions, see "link:../application-deployment-guide/overview.html#GSDPG00324[Module and Application Versions]" in
  GlassFish Server Open Source Edition Application Deployment Guide. +
  At most one version of a module or application can be enabled on a
  server instance. All other versions are disabled. Enabling one version
  automatically disables all others.

[[sthref1099]]

Examples

[[GSRFM599]][[sthref1100]]

Example 1   Enabling a Component

This example enables the disabled component, `sampleApp`.

[source,oac_no_warn]
----
asadmin> enable sampleApp
Command enable executed successfully
----

[[sthref1101]]

Exit Status

0::
  subcommand executed successfully
1::
  error in executing the subcommand

[[sthref1102]]

See Also

link:asadmin.html#asadmin-1m[`asadmin`(1M)]

link:deploy.html#deploy-1[`deploy`(1)],
link:disable.html#disable-1[`disable`(1)],
link:undeploy.html#undeploy-1[`undeploy`(1)]

link:../application-deployment-guide/toc.html#GSDPG[GlassFish Server Open Source Edition Application Deployment
Guide]


