type=page
status=published
title=delete-jndi-resource
next=delete-jvm-options.html
prev=delete-jms-resource.html
~~~~~~
delete-jndi-resource
====================

[[delete-jndi-resource-1]][[GSRFM00093]][[delete-jndi-resource]]

delete-jndi-resource
--------------------

removes a JNDI resource

[[sthref817]]

Synopsis

[source,oac_no_warn]
----
asadmin [asadmin-options] delete-jndi-resource [--help] 
[--target target] jndi_name
----

[[sthref818]]

Description

The `delete-jndi-resource` subcommand removes the specified JNDI
resource. You must remove all associations to the JNDI resource before
running this subcommand.

This subcommand is supported in remote mode only.

[[sthref819]]

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`::
  Valid targets are described below. +

[width="100%",cols="100%",]
|=======================================================================
a|
Note:

Resources are always created for a domain as a whole but are only
active for targets for which a `<resource-ref>` has been created using
the `--target` option when the resource was created. This means that
deleting a resource only deletes the `<resource-ref>` element for the
specified `--target`, and does not delete the resource from the domain
as a whole unless `domain` is specified as the `--target` for the
deletion.

|=======================================================================

  `server`;;
    Deletes the resource from the default server instance. This is the
    default value
  `domain`;;
    Deletes the resource from the domain
  cluster_name;;
    Deletes the resource for every server instance in the cluster
  instance_name;;
    Deletes the resource from the specified server instance

[[sthref820]]

Operands

jndi_name::
  The name of the JNDI resource to be removed.

[[sthref821]]

Examples

[[GSRFM561]][[sthref822]]

Example 1   Deleting a JNDI Resource

This example removes an existing JNDI resource named
`sample_jndi_resource`.

[source,oac_no_warn]
----
asadmin> delete-jndi-resource sample_jndi_resource
Command delete-jndi-resource executed successfully.
----

[[sthref823]]

Exit Status

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

[[sthref824]]

See Also

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

link:create-jndi-resource.html#create-jndi-resource-1[`create-jndi-resource`(1)],
link:list-jndi-resources.html#list-jndi-resources-1[`list-jndi-resources`(1)]


