type=page
status=published
title=list-iiop-listeners
next=list-instances.html
prev=list-http-listeners.html
~~~~~~
list-iiop-listeners
===================

[[list-iiop-listeners-1]][[GSRFM00169]][[list-iiop-listeners]]

list-iiop-listeners
-------------------

lists the existing IIOP listeners

[[sthref1509]]

Synopsis

[source,oac_no_warn]
----
asadmin [asadmin-options] list-iiop-listeners [--help]
[target]
----

[[sthref1510]]

Description

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

[[sthref1511]]

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.

[[sthref1512]]

Operands

target::
  This operand specifies the target for which the IIOP listeners are to
  be listed. Valid values are: +
  `server`;;
    Lists the listeners in the default server instance `server` and is
    the default value.
  configuration_name;;
    Lists the listeners in the specified configuration.
  cluster_name;;
    Lists the listeners in the specified cluster.
  instance_name;;
    Lists the listeners in a particular server instance.

[[sthref1513]]

Examples

[[GSRFM663]][[sthref1514]]

Example 1   Using the list-iiop-listeners subcommand

The following command lists all the IIOP listeners for the server
instance:

[source,oac_no_warn]
----
asadmin> list-iiop-listeners
orb-listener-1
SSL
SSL_MUTUALAUTH
sample_iiop_listener
Command list-iiop-listeners executed successfully.
----

[[sthref1515]]

Exit Status

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

[[sthref1516]]

See Also

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

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


