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

= create-jndi-resource

[[create-jndi-resource-1]][[GSRFM00041]][[create-jndi-resource]]

== create-jndi-resource

Registers a JNDI resource

[[sthref361]]

=== Synopsis

[source]
----
asadmin [asadmin-options] create-jndi-resource [--help]
[--target target]
--restype restype --factoryclass factoryclass
--jndilookupname jndilookupname [--enabled={true|false}]
[--description description]
[--property (name=value)[:name=value]*]
jndi-name
----

[[sthref362]]

=== Description

The `create-jndi-resource` subcommand registers a JNDI resource.

This subcommand is supported in remote mode only.

[[sthref363]]

=== 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 for which you are registering a JNDI
  resource. Valid values for target are described below.
+
[NOTE]
====
The resource is always created for the domain as a whole, but the
`resource-ref` for the resource is only created for the specified
`--target`. This means that although the resource is defined at the
domain level, it is only available at the specified target level. Use
the `create-resource-ref` subcommand to refer to the resource in
multiple targets if needed.
====

  `server`;;
    Creates the resource for the default server instance. This value is
    the default.
  `domain`;;
    Creates the resource for the domain
  cluster-name;;
    Creates the resource for every server instance in the cluster
  instance-name;;
    Creates the resource for a particular server instance

`--restype`::
  The JNDI resource type. Valid values are `topic` or `queue`.
`--factoryclass`::
  The class that creates the JNDI resource.
`--jndilookupname`::
  The lookup name that the external container uses.
`--enabled`::
  Determines whether the resource is enabled at runtime. Default is
  true.
`--description`::
  The text that provides details about the JNDI resource.
`--property`::
  Optional properties for configuring the resource. Each property is
  specified as a name-value pair. +
  The available properties are specific to the implementation that is
  specified by the `--factoryclass` option and are used by that
  implementation. {productName} itself does not define any
  properties for configuring a JNDI resource.

[[sthref364]]

=== Operands

jndi-name::
  The unique name of the JNDI resource to be created.

[[sthref365]]

=== Examples

[[GSRFM499]][[sthref366]]

==== Example 1   Creating a JNDI Resource

This example creates the JNDI resource `my-jndi-resource` for the
default server instance.

[source]
----
asadmin> create-jndi-resource
--restype com.example.jndi.MyResourceType
--factoryclass com.example.jndi.MyInitialContextFactoryClass
--jndilookupname remote-jndi-name
--description "sample JNDI resource" my-jndi-resource
JNDI resource my-jndi-resource created.
Command create-jndi-resource executed successfully.
----

[[sthref367]]

=== Exit Status

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

[[sthref368]]

=== See Also

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

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


