Module  java.rmi
软件包  java.rmi.server

Class RMIClassLoaderSpi

    • 构造方法详细信息

      • RMIClassLoaderSpi

        public RMIClassLoaderSpi​()
    • 方法详细信息

      • loadProxyClass

        public abstract Class<?> loadProxyClass​(String codebase,
                                                String[] interfaces,
                                                ClassLoader defaultLoader)
                                         throws MalformedURLException,
                                                ClassNotFoundException
        提供RMIClassLoader.loadProxyClass(String,String[],ClassLoader)的实现。 加载一个动态代理类(参见Proxy ,可以从代码库URL路径中实现一组与给定名称的接口,可选地使用提供的加载程序。

        此方法的实现必须返回实现命名接口的代理类或抛出异常。

        参数
        codebase - 加载类的URL列表(空格分隔),或 null
        interfaces - 要实现的代理类的接口的名称
        defaultLoader - 要使用的附加上下文类加载器,或 null
        结果
        一个实现命名接口的动态代理类
        异常
        MalformedURLException - 如果 codebase不是 null并且包含无效的URL,或者如果 codebasenull并且用于加载类的提供者特定的URL无效
        ClassNotFoundException - 如果在指定位置找不到某个命名接口的定义,或者如果动态代理类的创建失败(例如,如果 Proxy.getProxyClass(ClassLoader,Class[])将为给定接口列表抛出一个 IllegalArgumentException
      • getClassLoader

        public abstract ClassLoader getClassLoader​(String codebase)
                                            throws MalformedURLException
        提供RMIClassLoader.getClassLoader(String)的实现。 返回从给定的代码库URL路径加载类的类加载器。

        如果有一个安全管理员,它的checkPermission方法将被调用一个RuntimePermission("getClassLoader")权限; 这可能会导致一个SecurityException 该方法的实现还可以执行进一步的安全检查,以验证呼叫上下文是否具有连接到代码库URL路径中的所有URL的权限。

        参数
        codebase - 返回的类加载器从其加载类的URL(空格分隔)列表,或 null
        结果
        一个类加载器,它从给定的代码库URL路径加载类
        异常
        MalformedURLException - 如果 codebase是非 null并且包含无效URL,或者如果 codebasenull并且用于标识类加载器的提供者特定URL无效
        SecurityException - 如果有安全管理器,并且其 checkPermission方法的调用失败,或者主叫方没有权限连接到代码库URL路径中的所有URL
      • getClassAnnotation

        public abstract String getClassAnnotation​(Class<?> cl)
        提供RMIClassLoader.getClassAnnotation(Class)的实现。 返回在编组给定类的对象时,RMI将用于注释类描述符的注释字符串(表示类定义的位置)。
        参数
        cl - 获取注释的类
        结果
        一个字符串,用于在给定的类进行编组时用于注释,或者是 null
        异常
        NullPointerException - 如果 clnull