type=page
status=published
title=delete-module-config
next=delete-network-listener.html
prev=delete-message-security-provider.html
~~~~~~

delete-module-config
====================

[[delete-module-config-1]][[GSRFM854]][[delete-module-config]]

delete-module-config
--------------------

Removes the configuration of a module from `domain.xml`

[[sthref882]]

=== Synopsis

[source]
----
asadmin [asadmin-options] delete-module-config [--help]
[--target target]
service_name
----

[[sthref883]]

=== Description

The `delete-module-config` subcommand removes the configuration of a
module from `domain.xml` and causes the module to use the default
configuration included in the module.

This subcommand is supported in remote mode only.

[[sthref884]]

=== 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`::
  Specifies the target from which the configuration is to be deleted.
  Possible values are as follows:

  `server`;;
    Deletes the configuration from the default server instance. This is
    the default value.
  `domain`;;
    Deletes the configuration from the default domain.
  cluster-name;;
    Deletes the configuration from every server instance in the
    specified cluster.
  instance-name;;
    Deletes the configuration from the specified instance.

[[sthref885]]

=== Operands

service_name::
  The name of the module for which configuration is to be removed.

[[sthref886]]

=== Examples

[[GSRFM855]][[sthref887]]

==== Example 1   Deleting a Default Configuration From domain.xml

This example deletes the configuration of the web container module from
`domain1` in `server-config` (the default configuration).

[source]
----
asadmin> delete-module-config web-container
Command delete-module-config executed successfully.
----

[[sthref888]]

=== Exit Status

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

[[sthref889]]

=== See Also

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

link:create-module-config.html#create-module-config-1[`create-module-config`(1)],
link:get-active-module-config.html#get-active-module-config-1[`get-active-module-config`(1)]


