jdk/src/linux/doc/man/rmid.1
author malenkov
Thu, 10 Nov 2011 17:27:40 +0400
changeset 11086 09b1d6383d0b
parent 9573 c02ff5a7c67b
child 21743 3d979da7bdf0
permissions -rw-r--r--
7064279: Introspector.getBeanInfo() should release some resources in timely manner Reviewed-by: art, alexp
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
9573
c02ff5a7c67b 7043684: Update man pages for JDK 7 tools
bpatel
parents: 5865
diff changeset
     1
." Copyright (c) 1998, 2011, Oracle and/or its affiliates. All rights reserved.
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
     2
." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
90ce3da70b43 Initial load
duke
parents:
diff changeset
     3
."
90ce3da70b43 Initial load
duke
parents:
diff changeset
     4
." This code is free software; you can redistribute it and/or modify it
90ce3da70b43 Initial load
duke
parents:
diff changeset
     5
." under the terms of the GNU General Public License version 2 only, as
90ce3da70b43 Initial load
duke
parents:
diff changeset
     6
." published by the Free Software Foundation.
90ce3da70b43 Initial load
duke
parents:
diff changeset
     7
."
90ce3da70b43 Initial load
duke
parents:
diff changeset
     8
." This code is distributed in the hope that it will be useful, but WITHOUT
90ce3da70b43 Initial load
duke
parents:
diff changeset
     9
." ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
90ce3da70b43 Initial load
duke
parents:
diff changeset
    10
." FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
90ce3da70b43 Initial load
duke
parents:
diff changeset
    11
." version 2 for more details (a copy is included in the LICENSE file that
90ce3da70b43 Initial load
duke
parents:
diff changeset
    12
." accompanied this code).
90ce3da70b43 Initial load
duke
parents:
diff changeset
    13
."
90ce3da70b43 Initial load
duke
parents:
diff changeset
    14
." You should have received a copy of the GNU General Public License version
90ce3da70b43 Initial load
duke
parents:
diff changeset
    15
." 2 along with this work; if not, write to the Free Software Foundation,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    16
." Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    17
."
5506
202f599c92aa 6943119: Rebrand source copyright notices
ohair
parents: 2692
diff changeset
    18
." Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
202f599c92aa 6943119: Rebrand source copyright notices
ohair
parents: 2692
diff changeset
    19
." or visit www.oracle.com if you need additional information or have any
202f599c92aa 6943119: Rebrand source copyright notices
ohair
parents: 2692
diff changeset
    20
." questions.
2692
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
    21
."
9573
c02ff5a7c67b 7043684: Update man pages for JDK 7 tools
bpatel
parents: 5865
diff changeset
    22
.TH rmid 1 "10 May 2011"
2692
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
    23
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
    24
.LP
2692
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
    25
.SH "Name"
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
    26
rmid \- The Java RMI Activation System Daemon
90ce3da70b43 Initial load
duke
parents:
diff changeset
    27
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
    28
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
    29
\f3rmid\fP starts the activation system daemon that allows objects to be registered and activated in a virtual machine (VM).
90ce3da70b43 Initial load
duke
parents:
diff changeset
    30
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
    31
.SH "SYNOPSIS"
90ce3da70b43 Initial load
duke
parents:
diff changeset
    32
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
    33
.nf
90ce3da70b43 Initial load
duke
parents:
diff changeset
    34
\f3
90ce3da70b43 Initial load
duke
parents:
diff changeset
    35
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
    36
rmid [options]
90ce3da70b43 Initial load
duke
parents:
diff changeset
    37
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
    38
\fP
90ce3da70b43 Initial load
duke
parents:
diff changeset
    39
.fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
    40
90ce3da70b43 Initial load
duke
parents:
diff changeset
    41
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
    42
.SH "DESCRIPTION"
90ce3da70b43 Initial load
duke
parents:
diff changeset
    43
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
    44
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
    45
The \f3rmid\fP tool starts the activation system daemon. The activation system daemon must be started before activatable objects can be either registered with the activation system or activated in a VM. See the 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    46
.na
90ce3da70b43 Initial load
duke
parents:
diff changeset
    47
\f2Java RMI Specification\fP @
90ce3da70b43 Initial load
duke
parents:
diff changeset
    48
.fi
9573
c02ff5a7c67b 7043684: Update man pages for JDK 7 tools
bpatel
parents: 5865
diff changeset
    49
http://download.oracle.com/javase/7/docs/platform/rmi/spec/rmiTOC.html and 
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
    50
.na
90ce3da70b43 Initial load
duke
parents:
diff changeset
    51
\f2Activation tutorials\fP @
90ce3da70b43 Initial load
duke
parents:
diff changeset
    52
.fi
9573
c02ff5a7c67b 7043684: Update man pages for JDK 7 tools
bpatel
parents: 5865
diff changeset
    53
http://download.oracle.com/javase/7/docs/technotes/guides/rmi/activation/overview.html for details on how to write programs that use activatable remote objects.
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
    54
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
    55
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
    56
The daemon can be started by executing the \f2rmid\fP command, and specifying a security policy file, as follows:
90ce3da70b43 Initial load
duke
parents:
diff changeset
    57
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
    58
.nf
90ce3da70b43 Initial load
duke
parents:
diff changeset
    59
\f3
90ce3da70b43 Initial load
duke
parents:
diff changeset
    60
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
    61
    rmid \-J\-Djava.security.policy=rmid.policy
90ce3da70b43 Initial load
duke
parents:
diff changeset
    62
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
    63
\fP
90ce3da70b43 Initial load
duke
parents:
diff changeset
    64
.fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
    65
90ce3da70b43 Initial load
duke
parents:
diff changeset
    66
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
    67
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
    68
\f3Note:\fP When running Sun's implementation of \f2rmid\fP, by default you will need to specify a security policy file so that \f2rmid\fP can verify whether or not the information in each \f2ActivationGroupDesc\fP is allowed to be used to launch a VM for an activation group. Specifically, the command and options specified by the \f2CommandEnvironment\fP and any \f2Properties\fP passed to an \f2ActivationGroupDesc\fP's constructor must now be explicitly allowed in the security policy file for \f2rmid\fP. The value of the \f2sun.rmi.activation.execPolicy\fP property dictates the policy that \f2rmid\fP uses to determine whether or not the information in an \f2ActivationGroupDesc\fP may be used to launch a VM for an activation group.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    69
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
    70
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
    71
Executing \f2rmid\fP by default
90ce3da70b43 Initial load
duke
parents:
diff changeset
    72
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
    73
.RS 3
90ce3da70b43 Initial load
duke
parents:
diff changeset
    74
.TP 2
2692
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
    75
o
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
    76
starts the Activator and an internal registry on the default port, 1098, and 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    77
.TP 2
2692
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
    78
o
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
    79
binds an \f2ActivationSystem\fP to the name \f2java.rmi.activation.ActivationSystem\fP in this internal registry. 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    80
.RE
90ce3da70b43 Initial load
duke
parents:
diff changeset
    81
90ce3da70b43 Initial load
duke
parents:
diff changeset
    82
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
    83
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
    84
To specify an alternate port for the registry, you must specify the \f2\-port\fP option when starting up \f2rmid\fP. For example,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    85
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
    86
.nf
90ce3da70b43 Initial load
duke
parents:
diff changeset
    87
\f3
90ce3da70b43 Initial load
duke
parents:
diff changeset
    88
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
    89
    rmid \-J\-Djava.security.policy=rmid.policy \-port 1099
90ce3da70b43 Initial load
duke
parents:
diff changeset
    90
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
    91
\fP
90ce3da70b43 Initial load
duke
parents:
diff changeset
    92
.fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
    93
90ce3da70b43 Initial load
duke
parents:
diff changeset
    94
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
    95
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
    96
starts the activation system daemon and a registry on the registry's default port, 1099.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    97
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
    98
.SS 
2692
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
    99
Starting rmid from inetd/xinetd
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   100
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   101
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   102
An alternative to starting \f2rmid\fP from the command line is to configure \f2inetd\fP (Solaris) or \f2xinetd\fP (Linux) to start \f2rmid\fP on demand.
90ce3da70b43 Initial load
duke
parents:
diff changeset
   103
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   104
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   105
When \f2rmid\fP starts up, it attempts to obtain an inherited channel (inherited from \f2inetd\fP/\f2xinetd\fP) by invoking the \f2System.inheritedChannel\fP method. If the inherited channel is \f2null\fP or not an instance of \f2java.nio.channels.ServerSocketChannel\fP, then \f2rmid\fP assumes that it was not started by \f2inetd\fP/\f2xinetd\fP, and it starts up as described above.
90ce3da70b43 Initial load
duke
parents:
diff changeset
   106
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   107
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   108
If the inherited channel is a \f2ServerSocketChannel\fP instance, then \f2rmid\fP uses the \f2java.net.ServerSocket\fP obtained from the \f2ServerSocketChannel\fP as the server socket that accepts requests for the remote objects it exports, namely the registry in which the \f2java.rmi.activation.ActivationSystem\fP is bound and the \f2java.rmi.activation.Activator\fP remote object. In this mode, \f2rmid\fP behaves the same as when it is started from the command line, \f2except\fP:
90ce3da70b43 Initial load
duke
parents:
diff changeset
   109
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   110
.RS 3
90ce3da70b43 Initial load
duke
parents:
diff changeset
   111
.TP 2
2692
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
   112
o
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   113
Output printed to \f2System.err\fP is redirected to a file. This file is located in the directory specified by the \f2java.io.tmpdir\fP system property (typically \f2/var/tmp\fP or \f2/tmp\fP) with the prefix \f2"rmid\-err"\fP and the suffix \f2"tmp"\fP. 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   114
.TP 2
2692
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
   115
o
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   116
The \f2\-port\fP option is disallowed. If this option is specified, \f2rmid\fP will exit with an error message. 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   117
.TP 2
2692
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
   118
o
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   119
The \f2\-log\fP option is required. If this option is not specified, \f2rmid\fP will exit with an error message. 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   120
.RE
90ce3da70b43 Initial load
duke
parents:
diff changeset
   121
90ce3da70b43 Initial load
duke
parents:
diff changeset
   122
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   123
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   124
See the man pages for \f2inetd\fP (Solaris) or \f2xinetd\fP (Linux) for details on how to configure services to be started on demand.
90ce3da70b43 Initial load
duke
parents:
diff changeset
   125
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   126
.SH "OPTIONS"
90ce3da70b43 Initial load
duke
parents:
diff changeset
   127
.LP
2692
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
   128
.RS 3
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   129
.TP 3
90ce3da70b43 Initial load
duke
parents:
diff changeset
   130
\-C<someCommandLineOption> 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   131
Specifies an option that is passed as a command\-line argument to each child process (activation group) of \f2rmid\fP when that process is created. For example, you could pass a property to each virtual machine spawned by the activation system daemon: 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   132
.nf
90ce3da70b43 Initial load
duke
parents:
diff changeset
   133
\f3
90ce3da70b43 Initial load
duke
parents:
diff changeset
   134
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   135
    rmid \-C\-Dsome.property=value
90ce3da70b43 Initial load
duke
parents:
diff changeset
   136
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   137
\fP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   138
.fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   139
This ability to pass command\-line arguments to child processes can be useful for debugging. For example, the following command: 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   140
.nf
90ce3da70b43 Initial load
duke
parents:
diff changeset
   141
\f3
90ce3da70b43 Initial load
duke
parents:
diff changeset
   142
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   143
    rmid \-C\-Djava.rmi.server.logCalls=true
90ce3da70b43 Initial load
duke
parents:
diff changeset
   144
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   145
\fP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   146
.fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   147
will enable server\-call logging in all child VMs. 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   148
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   149
.TP 3
90ce3da70b43 Initial load
duke
parents:
diff changeset
   150
\-J<someCommandLineOption> 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   151
Specifies an option that is passed to the \f2java\fP interpreter running \f2rmid\fP. For example, to specify that \f2rmid\fP use a policy file named \f2rmid.policy\fP, the \f2\-J\fP option can be used to define the \f2java.security.policy\fP property on \f2rmid\fP's command line, for example: 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   152
.nf
90ce3da70b43 Initial load
duke
parents:
diff changeset
   153
\f3
90ce3da70b43 Initial load
duke
parents:
diff changeset
   154
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   155
    rmid \-J\-Djava.security.policy=rmid.policy
90ce3da70b43 Initial load
duke
parents:
diff changeset
   156
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   157
\fP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   158
.fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   159
.TP 3
90ce3da70b43 Initial load
duke
parents:
diff changeset
   160
\-J\-Dsun.rmi.activation.execPolicy=<policy> 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   161
Specifies the policy that \f2rmid\fP employs to check commands and command\-line options used to launch the VM in which an activation group runs. Please note that this option exists only in Sun's implementation of the Java RMI activation daemon. If this property is not specified on the command line, the result is the same as if \f2\-J\-Dsun.rmi.activation.execPolicy=default\fP were specified. The possible values of \f2<policy>\fP can be \f2default\fP, \f2<policyClassName>\fP, or \f2none\fP: 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   162
.RS 3
90ce3da70b43 Initial load
duke
parents:
diff changeset
   163
.TP 2
2692
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
   164
o
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   165
\f3default (or if this property is \fP\f4unspecified\fP\f3)\fP 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   166
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   167
The default \f2execPolicy\fP allows \f2rmid\fP to execute commands with specific command\-line options only if \f2rmid\fP has been granted permission to execute those commands and options in the security policy file that \f2rmid\fP uses. Only the default activation group implementation can be used with the \f2default\fP execution policy. 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   168
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   169
\f2rmid\fP launches a VM for an activation group using the information in the group's registered activation group descriptor, an \f2ActivationGroupDesc\fP. The group descriptor specifies an optional \f2ActivationGroupDesc.CommandEnvironment\fP which includes the \f2command\fP to execute to start the activation group as well as any command line \f2options\fP to be added to the command line. By default, \f2rmid\fP uses the \f2java\fP command found in \f2java.home\fP. The group descriptor also contains \f2properties\fP overrides that are added to the command line as options defined as: 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   170
.nf
90ce3da70b43 Initial load
duke
parents:
diff changeset
   171
\f3
90ce3da70b43 Initial load
duke
parents:
diff changeset
   172
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   173
    \-D\fP\f4<property>\fP\f3=\fP\f4<value>\fP\f3
90ce3da70b43 Initial load
duke
parents:
diff changeset
   174
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   175
\fP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   176
.fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   177
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   178
The permission \f2com.sun.rmi.rmid.ExecPermission\fP is used to grant \f2rmid\fP permission to execute a command, specified in the group descriptor's \f2CommandEnvironment\fP to launch an activation group. The permission \f2com.sun.rmi.rmid.ExecOptionPermission\fP is used to allow \f2rmid\fP to use command\-line options, specified as properties overrides in the group descriptor or as options in the \f2CommandEnvironment\fP, when launching the activation group. 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   179
.LP
2692
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
   180
When granting \f2rmid\fP permission to execute various commands and options, the permissions \f2ExecPermission\fP and \f2ExecOptionPermission\fP need to be granted universally (i.e., granted to all code sources). 
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
   181
.RS 3
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   182
.TP 3
90ce3da70b43 Initial load
duke
parents:
diff changeset
   183
ExecPermission 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   184
The \f2ExecPermission\fP class represents permission for \f2rmid\fP to execute a specific \f2command\fP to launch an activation group. 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   185
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   186
\f3Syntax\fP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   187
.br
90ce3da70b43 Initial load
duke
parents:
diff changeset
   188
The \f2name\fP of an \f2ExecPermission\fP is the path name of a command to grant \f2rmid\fP permission to execute. A path name that ends in "/*" indicates all the files contained in that directory (where "/" is the file\-separator character, \f2File.separatorChar\fP). A path name that ends with "/\-" indicates all files and subdirectories contained in that directory (recursively). A path name consisting of the special token "<<ALL FILES>>" matches \f3any\fP file. 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   189
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   190
\f3Note:\fP A path name consisting of a single "*" indicates all the files in the current directory, while a path name consisting of a single "\-" indicates all the files in the current directory and (recursively) all files and subdirectories contained in the current directory.  
90ce3da70b43 Initial load
duke
parents:
diff changeset
   191
.TP 3
90ce3da70b43 Initial load
duke
parents:
diff changeset
   192
ExecOptionPermission 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   193
The \f2ExecOptionPermission\fP class represents permission for \f2rmid\fP to use a specific command\-line \f2option\fP when launching an activation group. The \f2name\fP of an \f2ExecOptionPermission\fP is the value of a command line option. 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   194
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   195
\f3Syntax\fP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   196
.br
90ce3da70b43 Initial load
duke
parents:
diff changeset
   197
Options support a limited wildcard scheme. An asterisk signifies a wildcard match, and it may appear as the option name itself (i.e., it matches any option), or an asterisk may appear at the end of the option name only if the asterisk follows either a "." or "=". 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   198
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   199
For example: "*" or "\-Dfoo.*" or "\-Da.b.c=*" is valid, "*foo" or "\-Da*b" or "ab*" is not.  
90ce3da70b43 Initial load
duke
parents:
diff changeset
   200
.TP 3
2692
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
   201
Policy file for rmid 
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   202
When granting \f2rmid\fP permission to execute various commands and options, the permissions \f2ExecPermission\fP and \f2ExecOptionPermission\fP need to be granted universally (i.e., granted to all code sources). It is safe to grant these permissions universally because only \f2rmid\fP checks these permissions. 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   203
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   204
An example policy file that grants various execute permissions to \f2rmid\fP is: 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   205
.nf
90ce3da70b43 Initial load
duke
parents:
diff changeset
   206
\f3
90ce3da70b43 Initial load
duke
parents:
diff changeset
   207
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   208
grant {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   209
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   210
    permission com.sun.rmi.rmid.ExecPermission
90ce3da70b43 Initial load
duke
parents:
diff changeset
   211
.fl
2692
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
   212
        "/files/apps/java/jdk1.7.0/solaris/bin/java";
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   213
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   214
90ce3da70b43 Initial load
duke
parents:
diff changeset
   215
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   216
    permission com.sun.rmi.rmid.ExecPermission
90ce3da70b43 Initial load
duke
parents:
diff changeset
   217
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   218
        "/files/apps/rmidcmds/*";
90ce3da70b43 Initial load
duke
parents:
diff changeset
   219
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   220
90ce3da70b43 Initial load
duke
parents:
diff changeset
   221
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   222
    permission com.sun.rmi.rmid.ExecOptionPermission
90ce3da70b43 Initial load
duke
parents:
diff changeset
   223
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   224
        "\-Djava.security.policy=/files/policies/group.policy";
90ce3da70b43 Initial load
duke
parents:
diff changeset
   225
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   226
90ce3da70b43 Initial load
duke
parents:
diff changeset
   227
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   228
    permission com.sun.rmi.rmid.ExecOptionPermission
90ce3da70b43 Initial load
duke
parents:
diff changeset
   229
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   230
        "\-Djava.security.debug=*";
90ce3da70b43 Initial load
duke
parents:
diff changeset
   231
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   232
90ce3da70b43 Initial load
duke
parents:
diff changeset
   233
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   234
    permission com.sun.rmi.rmid.ExecOptionPermission
90ce3da70b43 Initial load
duke
parents:
diff changeset
   235
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   236
        "\-Dsun.rmi.*";
90ce3da70b43 Initial load
duke
parents:
diff changeset
   237
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   238
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   239
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   240
\fP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   241
.fi
2692
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
   242
The first permission granted allow \f2rmid\fP to execute the 1.7.0 version of the \f2java\fP command, specified by its explicit path name. Note that by default, the version of the \f2java\fP command found in \f2java.home\fP is used (the same one that \f2rmid\fP uses), and does not need to be specified in the policy file. The second permission allows \f2rmid\fP to execute any command in the directory \f2/files/apps/rmidcmds\fP. 
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   243
.LP
2692
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
   244
The third permission granted, an \f2ExecOptionPermission\fP, allows \f2rmid\fP to launch an activation group that defines the security policy file to be \f2/files/policies/group.policy\fP. The next permission allows the \f2java.security.debug\fP property to be used by an activation group. The last permission allows any property in the \f2sun.rmi\fP property name hierarchy to be used by activation groups. 
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   245
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   246
To start \f2rmid\fP with a policy file, the \f2java.security.policy\fP property needs to be specified on \f2rmid\fP's command line, for example: 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   247
.LP
9573
c02ff5a7c67b 7043684: Update man pages for JDK 7 tools
bpatel
parents: 5865
diff changeset
   248
\f2rmid \-J\-Djava.security.policy=rmid.policy\fP  
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   249
.RE
90ce3da70b43 Initial load
duke
parents:
diff changeset
   250
.TP 2
2692
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
   251
o
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   252
\f4<policyClassName>\fP 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   253
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   254
If the default behavior is not flexible enough, an administrator can provide, when starting \f2rmid\fP, the name of a class whose \f2checkExecCommand\fP method is executed in order to check commands to be executed by rmid. 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   255
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   256
The \f2policyClassName\fP specifies a public class with a public, no\-argument constructor and an implementation of the following \f2checkExecCommand\fP method: 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   257
.nf
90ce3da70b43 Initial load
duke
parents:
diff changeset
   258
\f3
90ce3da70b43 Initial load
duke
parents:
diff changeset
   259
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   260
    public void checkExecCommand(ActivationGroupDesc desc,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   261
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   262
                                 String[] command)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   263
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   264
        throws SecurityException;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   265
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   266
\fP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   267
.fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   268
Before launching an activation group, \f2rmid\fP calls the policy's \f2checkExecCommand\fP method, passing it the activation group descriptor and an array containing the complete command to launch the activation group. If the \f2checkExecCommand\fP throws a \f2SecurityException\fP, \f2rmid\fP will not launch the activation group and an \f2ActivationException\fP will be thrown to the caller attempting to activate the object. 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   269
.TP 2
2692
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
   270
o
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   271
\f3none\fP 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   272
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   273
If the \f2sun.rmi.activation.execPolicy\fP property value is "none", then \f2rmid\fP will not perform any validation of commands to launch activation groups.  
90ce3da70b43 Initial load
duke
parents:
diff changeset
   274
.RE
2692
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
   275
.LP
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   276
.TP 3
90ce3da70b43 Initial load
duke
parents:
diff changeset
   277
\-log dir 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   278
Specifies the name of the directory the activation system daemon uses to write its database and associated information. The log directory defaults to creating a directory, \f2log\fP, in the directory in which the \f2rmid\fP command was executed. 
2692
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
   279
.LP
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   280
.TP 3
90ce3da70b43 Initial load
duke
parents:
diff changeset
   281
\-port port 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   282
Specifies the port \f2rmid\fP's registry uses. The activation system daemon binds the \f2ActivationSystem\fP, with the name \f2java.rmi.activation.ActivationSystem\fP, in this registry. Thus, the \f2ActivationSystem\fP on the local machine can be obtained using the following \f2Naming.lookup\fP method call: 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   283
.nf
90ce3da70b43 Initial load
duke
parents:
diff changeset
   284
\f3
90ce3da70b43 Initial load
duke
parents:
diff changeset
   285
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   286
    import java.rmi.*; 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   287
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   288
    import java.rmi.activation.*;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   289
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   290
90ce3da70b43 Initial load
duke
parents:
diff changeset
   291
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   292
    ActivationSystem system; system = (ActivationSystem)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   293
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   294
    Naming.lookup("//:\fP\f4port\fP/java.rmi.activation.ActivationSystem");
90ce3da70b43 Initial load
duke
parents:
diff changeset
   295
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   296
.fi
90ce3da70b43 Initial load
duke
parents:
diff changeset
   297
.TP 3
90ce3da70b43 Initial load
duke
parents:
diff changeset
   298
\-stop 
2692
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
   299
Stops the current invocation of \f2rmid\fP, for a port specified by the \f2\-port\fP option. If no port is specified, it will stop the \f2rmid\fP running on port 1098. 
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
   300
.RE
9573
c02ff5a7c67b 7043684: Update man pages for JDK 7 tools
bpatel
parents: 5865
diff changeset
   301
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   302
.LP
9573
c02ff5a7c67b 7043684: Update man pages for JDK 7 tools
bpatel
parents: 5865
diff changeset
   303
.SH "ENVIRONMENT VARIABLES"
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   304
.LP
2692
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
   305
.RS 3
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   306
.TP 3
90ce3da70b43 Initial load
duke
parents:
diff changeset
   307
CLASSPATH 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   308
Used to provide the system a path to user\-defined classes. Directories are separated by colons. For example: 
90ce3da70b43 Initial load
duke
parents:
diff changeset
   309
.nf
90ce3da70b43 Initial load
duke
parents:
diff changeset
   310
\f3
90ce3da70b43 Initial load
duke
parents:
diff changeset
   311
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   312
    .:/usr/local/java/classes
90ce3da70b43 Initial load
duke
parents:
diff changeset
   313
.fl
90ce3da70b43 Initial load
duke
parents:
diff changeset
   314
\fP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   315
.fi
2692
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
   316
.RE
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   317
90ce3da70b43 Initial load
duke
parents:
diff changeset
   318
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   319
.SH "SEE ALSO"
90ce3da70b43 Initial load
duke
parents:
diff changeset
   320
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   321
.LP
2692
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
   322
rmic(1), 
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
   323
.na
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
   324
\f2CLASSPATH\fP @
345bc8d65b19 6837214: Update JDK7 man pages
tbell
parents: 2
diff changeset
   325
.fi
9573
c02ff5a7c67b 7043684: Update man pages for JDK 7 tools
bpatel
parents: 5865
diff changeset
   326
http://download.oracle.com/javase/7/docs/technotes/tools/index.html#classpath, java(1)
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   327
.LP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   328