type=page
status=published
title=create-iiop-listener
next=create-instance.html
prev=create-http-redirect.html
~~~~~~
create-iiop-listener
====================

[[create-iiop-listener-1]][[GSRFM00032]][[create-iiop-listener]]

create-iiop-listener
--------------------

adds an IIOP listener

[[sthref284]]

Synopsis

[source,oac_no_warn]
----
asadmin [asadmin-options] create-iiop-listener [--help] 
--listeneraddress address
[--iiopport iiop-port-number] [--securityenabled={false|true}] [--enabled={true|false}] 
[--property (name=value)[:name=value]*]
[--target target] listener_id
----

[[sthref285]]

Description

The `create-iiop-listener` subcommand creates an IIOP listener. This
subcommand is supported in remote mode only.

[[sthref286]]

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.
`--listeneraddress`::
  Either the IP address or the hostname (resolvable by DNS).
`--iiopport`::
  The IIOP port number. The default value is 1072.
`--securityenabled`::
  If set to true, the IIOP listener runs SSL. You can turn SSL2 or SSL3
  ON or OFF and set ciphers using an SSL element. The security setting
  globally enables or disables SSL by making certificates available to
  the server instance. The default value is `false`.
`--enabled`::
  If set to true, the IIOP listener is enabled at runtime. The default
  value is `true`.
`--property`::
  Optional attribute name/value pairs for configuring the IIOP listener.
`--target`::
  Specifies the target for which you are creating the IIOP listener.
  Valid values are +
  `server`;;
    Creates the listener for the default server instance `server` and is
    the default value.
  configuration_name;;
    Creates the listener for the named configuration.
  cluster_name;;
    Creates the listener for every server instance in the cluster.
  stand-alone_instance_name;;
    Creates the listener for a particular standalone server instance.

[[sthref287]]

Operands

listener_id::
  A unique identifier for the IIOP listener to be created.

[[sthref288]]

Examples

[[GSRFM485]][[sthref289]]

Example 1   Creating an IIOP Listener

The following command creates an IIOP listener named
`sample_iiop_listener`:

[source,oac_no_warn]
----
asadmin> create-iiop-listener --listeneraddress 192.168.1.100 
--iiopport 1400 sample_iiop_listener
Command create-iiop-listener executed successfully.
----

[[GSRFM486]][[sthref290]]

Example 2   Creating an IIOP Listener with a Target Cluster

The following command creates an IIOP listener named `iiop_listener_2`
for the cluster `mycluster`. It uses the target option.

[source,oac_no_warn]
----
asadmin> create-iiop-listener --listeneraddress 0.0.0.0 --iiopport 1401 
--target mycluster iiop_listener_2
Command create-iiop-listener executed successfully.
----

[[sthref291]]

Exit Status

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

[[sthref292]]

See Also

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

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


