Module java.xml

Class DOMImplementationRegistry

java.lang.Object
org.w3c.dom.bootstrap.DOMImplementationRegistry

public final class DOMImplementationRegistry extends Object
一个工厂,使应用程序能够获取DOMImplementation的实例。

示例:

  // 获取DOMImplementation注册表的实例
  DOMImplementationRegistry registry =
       DOMImplementationRegistry.newInstance();
  // 获取一个DOM实现Level 3 XML模块
  DOMImplementation domImpl =
       registry.getDOMImplementation("XML 3.0");
 

这为应用程序提供了一个与实现无关的起点。DOM实现可以修改这个类以满足新的安全标准或为DOMImplementationSources列表提供额外的回退。

自从:
1.5, DOM Level 3
参见:
  • Field Details

    • PROPERTY

      public static final String PROPERTY
      用于指定DOMImplementationSource类名的系统属性。
      参见:
  • Method Details

    • newInstance

      获取DOMImplementationRegistry的新实例。 DOMImplementationRegistry由应用程序或实现初始化,具体取决于上下文,首先检查Java系统属性org.w3c.dom.DOMImplementationSourceList的值以及其内容位于"META_INF/services/org.w3c.dom.DOMImplementationSourceList"的服务提供程序。此属性的值是一个空格分隔的类名列表,这些类名实现了DOMImplementationSource接口。类名列表中列出的每个类都会被实例化,遇到的任何异常都会被抛出给应用程序。
      返回:
      DOMImplementationRegistry的初始化实例
      抛出:
      ClassNotFoundException - 如果找不到任何指定的类
      InstantiationException - 如果任何指定的类是接口或抽象类
      IllegalAccessException - 如果指定类的默认构造函数不可访问
      ClassCastException - 如果任何指定的类没有实现DOMImplementationSource
    • getDOMImplementation

      public DOMImplementation getDOMImplementation(String features)
      返回具有所需特性的第一个实现,如果找不到则返回null
      参数:
      features - 指定所需特性的字符串。这是一个以空格分隔的列表,其中每个特性由其名称指定,可选地后跟一个空格和版本号。类似于:"XML 1.0 Traversal +Events 2.0"
      返回:
      具有所需特性的实现,如果找不到则返回null
    • getDOMImplementationList

      public DOMImplementationList getDOMImplementationList(String features)
      返回支持所需特性的实现列表。
      参数:
      features - 指定所需特性的字符串。这是一个以空格分隔的列表,其中每个特性由其名称指定,可选地后跟一个空格和版本号。类似于:"XML 1.0 Traversal +Events 2.0"
      返回:
      支持所需特性的DOMImplementations列表。
    • addSource

      public void addSource(DOMImplementationSource s)
      注册一个实现。
      参数:
      s - 要注册的源,不能为null