type=page
status=published
title=list-jms-resources
next=list-jndi-entries.html
prev=list-jms-hosts.html
~~~~~~
list-jms-resources
==================

[[list-jms-resources-1]][[GSRFM00177]][[list-jms-resources]]

list-jms-resources
------------------

lists the JMS resources

[[sthref1575]]

Synopsis

[source,oac_no_warn]
----
asadmin [asadmin-options] list-jms-resources [--help]
[--restype type]
[target]
----

[[sthref1576]]

Description

The `list-jms-resources` subcommand lists the existing Java Message
Service (JMS) resources (destination and connection factory resources).

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

[[sthref1577]]

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.
`--restype`::
  The JMS resource type can be `jakarta.jms.Topic`, `jakarta.jms.Queue`,
  `jakarta.jms.ConnectionFactory`, `jakarta.jms.TopicConnectionFactory`, or
  `jakarta.jms.QueueConnectionFactory`.

[[sthref1578]]

Operands

target::
  Restricts the listing to resources for a specified target. Valid
  values are as follows: +
  `server`;;
    Lists the resources for the default server instance. This is the
    default value.
  `domain`;;
    Lists the resources for the domain.
  cluster-name;;
    Lists the resources for every server instance in the specified
    cluster.
  instance-name;;
    Lists the resources for the specified server instance.

[[sthref1579]]

Examples

[[GSRFM675]][[sthref1580]]

Example 1   Listing all JMS resources

The following subcommand lists all JMS resources.

[source,oac_no_warn]
----
asadmin> list-jms-resources
jms/Queue
jms/ConnectionFactory
jms/DurableConnectionFactory
jms/Topic
Command list-jms-resources executed successfully.
----

[[GSRFM676]][[sthref1581]]

Example 2   Listing JMS resources of a specified type

The following subcommand lists all `jakarta.jms.ConnectionFactory`
resources.

[source,oac_no_warn]
----
asadmin> list-jms-resources --restype jakarta.jms.ConnectionFactory
jms/ConnectionFactory
jms/DurableConnectionFactory
Command list-jms-resources executed successfully.
----

[[sthref1582]]

Exit Status

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

[[sthref1583]]

See Also

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

link:create-jms-resource.html#create-jms-resource-1[`create-jms-resource`(1)],
link:delete-jms-resource.html#delete-jms-resource-1[`delete-jms-resource`(1)]


