Module  java.rmi
软件包  java.rmi.activation

Interface ActivationInstantiator

  • All Superinterfaces:
    Remote
    所有已知实现类:
    ActivationGroupActivationGroup_Stub


    public interface ActivationInstantiator
    extends Remote
    一个ActivationInstantiator负责创建“可激活”对象的实例。 ActivationGroup的具体子类实现了newInstance方法来处理组内的创建对象。
    从以下版本开始:
    1.2
    另请参见:
    ActivationGroup
    • 方法详细信息

      • newInstance

        MarshalledObject<? extends Remote> newInstance​(ActivationID id,
                                                       ActivationDesc desc)
                                                throws ActivationException,
                                                       RemoteException
        激活者调用实例化器的newInstance方法,以便在该组中重新创建具有激活标识符id和描述符desc 实例负责人:
        • 使用描述符的getClassName方法确定对象的类,
        • 从从描述符获取的代码位置加载类(使用getLocation方法),
        • 通过调用对象的类的特殊“激活”构造函数来创建类的实例,该对象的类具有两个参数:对象的ActivationID和包含对象特定初始化数据的MarshalledObject ,以及
        • 返回包含其创建的远程对象的存根的MarshalledObject。

        为了激活成功,必须满足以下要求之一,否则将抛出ActivationException

        • 要激活的类和特殊的激活构造函数都是public的,并且类位于至少为java.rmi模块的包中,为exported ; 要么
        • 要激活的类位于至少为java.rmi模块的包中,为open
        参数
        id - 对象的激活标识符
        desc - 对象的描述符
        结果
        包含远程对象的存根的序列化表示的编组对象
        异常
        ActivationException - 如果对象激活失败
        RemoteException - 如果远程调用失败
        从以下版本开始:
        1.2