public interface SeleniumRMIServer
extends java.rmi.Remote
A Selenium RMI Server is the centralized controller embedded within each remote Selenium Standalone Server. This provides an RMI gateway to the remote host machines running a Selenium Server allowing us to provide additional functional features on the machine hosting the browsers of a Selenium test.
Note: For consistent operation the java.rmi.server.hostname
needs to be set in code or
on the command line before launching an RMI Server:
System.setProperty("java.rmi.server.hostname", "<rmi server ip>");
System.setProperty("java.rmi.server.hostname", "hostname.company.internal.net");
-Djava.rmi.server.hostname=<rmi server ip>
-Djava.rmi.server.hostname=hostname.company.internal.net
SeleniumServerRunner
,
SeleniumRMIAgent
,
SeleniumAgent
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
DEFAULT_RMI_SERVER
'SAFS/SeleniumRMIServer'
|
static java.lang.String |
JAVA_RMI_SERVER_HOSTNAME_PROPERTY
"java.rmi.server.hostname"
System property or command-line JVM setting (-Djava.rmi.server.hostname=) specifying the IP address to be used by the RMI Server. |
static java.lang.String |
SERVER_SYSTEM_PROPERTY
'safs.server.running' System Property signifying this JVM contains the RMI Server
and any RMI Agents should shutdown and not attempt to connect to the RMI Server.
|
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
execute(java.lang.Object command,
java.lang.Object... parameters)
Called by an RMI Agent.
|
void |
register(SeleniumRMIAgent anAgent)
Called by an RMI Agent.
|
java.lang.Object |
runCommand(java.lang.Object command)
Called by an RMI Agent.
|
void |
unRegister(SeleniumRMIAgent anAgent)
Called by an RMI Agent.
|
static final java.lang.String DEFAULT_RMI_SERVER
static final java.lang.String SERVER_SYSTEM_PROPERTY
static final java.lang.String JAVA_RMI_SERVER_HOSTNAME_PROPERTY
This property MUST be set prior to starting the RMI Server/Registry or the RMI Server object will set its IP to 127.0.01 "localhost"--which will prevent remote Agents from properly finding it.
void register(SeleniumRMIAgent anAgent) throws java.rmi.RemoteException
java.rmi.RemoteException
void unRegister(SeleniumRMIAgent anAgent) throws java.rmi.RemoteException
java.rmi.RemoteException
java.lang.Object runCommand(java.lang.Object command) throws java.rmi.RemoteException, java.lang.Exception
For example, the Client and Server may have been coded to pass string commands back and forth and the string commands can be parsed to provide an unlimited number of command possibilities.
command
- Object of a type expected by the Server implementation for this method.java.rmi.RemoteException
java.lang.Exception
java.lang.Object execute(java.lang.Object command, java.lang.Object... parameters) throws java.rmi.RemoteException, java.lang.Exception
The parameters should be Serializable.
command
- Object of a type expected by the Server implementation for this method.parameters
- Object... of a type expected by the Server implementation for this method.java.rmi.RemoteException
java.lang.Exception
Copyright © SAS Institute. All Rights Reserved.