type=page
status=published
title=list-protocols
next=list-resource-adapter-configs.html
prev=list-protocol-finders.html
~~~~~~

list-protocols
==============

[[list-protocols-1]][[GSRFM00195]][[list-protocols]]

list-protocols
--------------

Lists the existing protocols

[[sthref1764]]

=== Synopsis

[source]
----
asadmin [asadmin-options] list-protocols [--help]
[target]
----

[[sthref1765]]

=== Description

The `list-protocols` subcommand lists the existing protocols. This
subcommand is supported in remote mode only.

[[sthref1766]]

=== 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.

[[sthref1767]]

=== Operands

target::
  Restricts the listing to protocols for a specified target. Valid
  values are as follows:

  `server`;;
    Lists the protocols for the default server instance. This is the
    default value.
  configuration-name;;
    Lists the protocols for the specified configuration.
  cluster-name;;
    Lists the protocols for all server instances in the specified
    cluster.
  instance-name;;
    Lists the protocols for the specified server instance.

[[sthref1768]]

=== Examples

[[GSRFM705]][[sthref1769]]

==== Example 1   Listing Protocols

The following command lists all the protocols for the server instance:

[source]
----
asadmin> list-protocols
admin-listener
http-1
http-listener-1
http-listener-2
Command list-protocols executed successfully.
----

[[sthref1770]]

=== Exit Status

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

[[sthref1771]]

=== See Also

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

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


