type=page
status=published
title=ping-node-dcom
next=ping-node-ssh.html
prev=ping-connection-pool.html
~~~~~~
ping-node-dcom
==============

[[ping-node-dcom-1]][[GSRFM728]][[ping-node-dcom]]

ping-node-dcom
--------------

tests if a node that is enabled for communication over DCOM is usable

[[sthref1934]]

Synopsis

[source,oac_no_warn]
----
asadmin [asadmin-options] ping-node-dcom [--help]
[--validate={false|true}] node-name
----

[[sthref1935]]

Description

The `ping-node-dcom` subcommand tests if a node that is enabled for
communication over the Distributed Component Object Model (DCOM) remote
protocol is usable. The DCOM protocol is available only on Windows
systems. This subcommand requires DCOM to be configured on the machine
where the domain administration server (DAS) is running and on the
machine where the node resides. You may run this command from any
machine that can contact the DAS.

If the node is usable, the subcommand displays a confirmation that the
subcommand could connect to the node through DCOM. This confirmation
includes the name of the host that the node represents.

Optionally, the subcommand can also validate the node to determine if
the link:asadmin.html#asadmin-1m[`asadmin`(1M)] utility can run on the
host that the node represents. To validate a node, the subcommand runs
the link:version.html#version-1[`version`(1)] subcommand. If the node is
valid, the subcommand displays the version that the `version` subcommand
returns.

The node that is specified as the operand of this subcommand must be
enabled for communication over DCOM. If the node is not enabled for
communication over DCOM, an error occurs. To determine whether a node is
enabled for communication over DCOM, use the
link:list-nodes.html#list-nodes-1[`list-nodes`(1)] subcommand.


[NOTE]
=======================================================================

To test whether a node that is enabled for communication over secure
shell (SSH) is usable, use the
link:ping-node-ssh.html#ping-node-ssh-1[`ping-node-ssh`(1)] subcommand.

=======================================================================


This subcommand is supported in remote mode only.

[[sthref1936]]

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.
`--validate`::
  Specifies whether the subcommand validates the node. +
  Possible values are as follows: +
  `true`;;
    The node is validated.
  `false`;;
    The node is not validated (default).

[[sthref1937]]

Operands

node-name::
  The name of the node to test. The node must be enabled for
  communication over DCOM. Otherwise, an error occurs.

[[sthref1938]]

Examples

[[GSRFM729]][[sthref1939]]

Example 1   Testing if a DCOM-Enabled Node Is Usable

This example tests if the DCOM-enabled node `wpmd2` is usable.

[source,oac_no_warn]
----
asadmin> ping-node-dcom wpmdl2
Successfully made DCOM connection to node wpmdl2 (wpmdl2.example.com)
Command ping-node-dcom executed successfully.
----

[[GSRFM730]][[sthref1940]]

Example 2   Validating a DCOM-Enabled Node

This example validates the DCOM-enabled node `adc-node`.

[source,oac_no_warn]
----
asadmin> ping-node-dcom --validate=true adc-node
Successfully made DCOM connection to node adc-node (adc-node.example.com)
GlassFish version found at C:\glassfish3:
Using locally retrieved version string from version class.
Version = GlassFish Server Open Source Edition 3.1.2 (build 18)
Command version executed successfully.
Command ping-node-dcom executed successfully.
----

[[sthref1941]]

Exit Status

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

[[sthref1942]]

See Also

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

link:create-node-dcom.html#create-node-dcom-1[`create-node-dcom`(1)],
link:delete-node-dcom.html#delete-node-dcom-1[`delete-node-dcom`(1)],
link:list-nodes.html#list-nodes-1[`list-nodes`(1)],
link:ping-node-ssh.html#ping-node-ssh-1[`ping-node-ssh`(1)],
link:update-node-ssh.html#update-node-dcom-1[`update-node-dcom`(1)],
link:validate-dcom.html#validate-dcom-1[`validate-dcom`(1)],
link:version.html#version-1[`version`(1)]


