类 java.rmi.server.RMISocketFactory
java.lang.Object
|
+----java.rmi.server.RMISocketFactory
- public abstract class RMISocketFactory
- extends Object
RMI 运行时使用 RMISocketFactory 来获得 RMI 调用的客户机和服务器
socket 。 socket 工厂的缺省实现执行一个三层方法来生成客户机 socket。首先,试图创建一个到远程 VM 的直接 socket 连接。如果失败(由于防火墙的原因), 则运行进程用服务器的显式端口号码和 HTTP
通信。如果防火墙不允许此类型的通信,则使用到一 cgi-bin 脚本的
HTTP 来发送(POST)该 RMI 呼叫。应用程序可以设置 RMI 的 socket 源。在此情况下,应用程序负责提供穿越防火墙的 socket。
构造子索引
- RMISocketFactory()
-
方法索引
- createServerSocket(int)
- 在指定的端口(0 端口表示一无名的端口)生成一服务器 socket。
- createSocket(String, int)
- 生成一个连接到指定主机和端口的客户机 socket。
- getFailureHandler()
- 返回处理 socket 生成失败的处理程序。
- getSocketFactory()
- 返回由 RMI 使用的 socket 工厂。
- setFailureHandler(RMIFailureHandler)
- 设置失败处理程序,在生成 socket 失败的时侯由 RMI 运行进程调用。
- setSocketFactory(RMISocketFactory)
- 设置 RMI 获得 socket 的 socket 工厂。
构造子
RMISocketFactory
public RMISocketFactory()
方法
createSocket
public abstract Socket createSocket(String host,
int port) throws IOException
- 生成一个连接到指定主机和端口的客户机 socket。
createServerSocket
public abstract ServerSocket createServerSocket(int port) throws IOException
- 在指定的端口(0 端口表示一无名的端口)生成一服务器 socket。
setSocketFactory
public static void setSocketFactory(RMISocketFactory fac) throws IOException
- 设置 RMI 获得 socket 的 socket 工厂。 RMI 的
socket 工厂只能设置一次。 注意:RMISocketFactory 只有在当前的安全管理器允许设置 socket 工厂的时侯设置;如果不允许设置,则会抛出
SecurityException 异常。
getSocketFactory
public static RMISocketFactory getSocketFactory()
- 返回由 RMI 使用的 socket 工厂。
setFailureHandler
public static void setFailureHandler(RMIFailureHandler fh)
- 设置失败处理程序,在生成 socket 失败的时侯由 RMI 运行进程调用。
处理程序的缺省实现返回 false (因此运行进程不再试图重新生成 socket)。
getFailureHandler
public static RMIFailureHandler getFailureHandler()
- 返回处理 socket 生成失败的处理程序。