|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 上一个软件包 下一个软件包 | 框架 无框架 | |||||||||
请参见:
描述
| 接口摘要 | |
|---|---|
| TemplatesHandler | 可用于将 SAX 解析事件(解析转换指令)处理为 Templates 对象的 SAX ContentHandler。 |
| TransformerHandler | 侦听 SAX ContentHandler 解析事件,并将它们转换为 Result 的 TransformerHandler。 |
| 类摘要 | |
|---|---|
| SAXResult | 充当转换 Result 的持有者。 |
| SAXSource | 充当 SAX 样式 Source 的持有者。 |
| SAXTransformerFactory | 此类扩展了 TransformerFactory 以提供特定于 SAX 的工厂方法。 |
此包实现特定于 SAX2 的转换 API。它提供了允许从 ContentHandler 事件输入的类,还提供了生成 org.xml.sax.ContentHandler 事件的类。它还提供了用于将输入源设置为 XMLReader,或使用 InputSource 作为源的方法。它还允许创建 XMLFilter,这支持从其他转换“拉入”的转换,并使转换器通过多种形式作为 XMLReader 使用。
SAXSource 类允许设置用于“拉入”解析事件的 XMLReader,以及用于指定 SAX 源的 InputSource。
SAXResult 类允许设置用作来自转换的 SAX2 事件接收器的 ContentHandler。
SAXTransformerFactory 扩展了 TransformerFactory,以提供用于创建 TemplatesHandler、TransformerHandler 和 XMLReader 实例的工厂方法。
要获取 SAXTransformerFactory,调用者必须强制转换从 TransformerFactory.newInstance() 返回的 TransformerFactory 实例。
@link javax.xml.transform.sax.TransformerHandler} 接口允许从 SAX2 解析事件创建转换,这是 "push"(推)模型,而不是转换中通常发生的 "pull"(拉)模型。正常解析事件通过 ContentHandler 接口接收,词法事件(例如 startCDATA 和 endCDATA)通过 LexicalHandler 接口接收,标记禁用输出转义的开始或结束的事件通过 ContentHandler.processingInstruction(java.lang.String, java.lang.String) 接收,目标参数为 Result.PI_DISABLE_OUTPUT_ESCAPING 和 Result.PI_ENABLE_OUTPUT_ESCAPING。如果要在 Transformer 处理程序中设置参数、输出属性或其他功能,则需要从 TransformerHandler.getTransformer() 获取 Transformer 引用,以及从该引用调用的方法。
TemplatesHandler 接口允许从 SAX2 解析事件创建 Templates 对象。当 ContentHandler 事件完成后,可以从 TemplatesHandler.getTemplates() 获取 Templates 对象。注意,应正常调用 TemplatesHandler.setSystemId(java.lang.String),以建立可以从其解析 URL 的基本系统 ID。
SAXTransformerFactory.newXMLFilter(javax.xml.transform.Source) 方法允许创建 XMLFilter,它封装了 "pull" 转换的 SAX2 概念。以下阐释了互相形成链的几种转换。每个过滤器均指向一个父 XMLReader,且通过调用链中最后的 reader 上的 XMLReader.parse(org.xml.sax.InputSource) 来引发最后的转换。
|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 上一个软件包 下一个软件包 | 框架 无框架 | |||||||||
版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。