type=page
status=published
title=delete-jms-host
next=delete-jms-resource.html
prev=delete-jmsdest.html
~~~~~~

= delete-jms-host

[[delete-jms-host-1]][[GSRFM00091]][[delete-jms-host]]

== delete-jms-host

Removes a JMS host

[[sthref801]]

=== Synopsis

[source]
----
asadmin [asadmin-options] delete-jms-host [--help]
[--target target]
jms_host_name
----

[[sthref802]]

=== Description

The `delete-jms-host` subcommand removes the specified Java Message
Service (JMS) host.

This subcommand is supported in remote mode only. Remote `asadmin`
subcommands require a running domain administration server (DAS).

Deleting the default JMS host, named `default_JMS_host`, is not recommended.

[[sthref803]]

=== 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`::
  Deletes the JMS host only from the specified target. Valid values are
  as follows:

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

[[sthref804]]

=== Operands

jms_host_name::
  The name of the host to be deleted.

[[sthref805]]

=== Examples

[[GSRFM559]][[sthref806]]

==== Example 1   Deleting a JMS host

The following subcommand deletes the JMS host named `MyNewHost`.

[source]
----
asadmin> delete-jms-host MyNewHost
Command delete-jms-host executed successfully.
----

[[sthref807]]

=== Exit Status

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

[[sthref808]]

=== See Also

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

link:create-jms-host.html#create-jms-host-1[`create-jms-host`(1)],
link:jms-ping.html#jms-ping-1[`jms-ping`(1)],
link:list-jms-hosts.html#list-jms-hosts-1[`list-jms-hosts`(1)]


