XML特殊处理器Xalan的有趣功能trace

ZDNet软件频道 时间:2003-11-18 作者:ZDNet China |  我要评论()
本文关键词:
Xalan XSLT处理器目前已经成为很多XML程序既成事实的标准了,它以突出的可靠表现而闻名。其实他还提供了一些非标准的XSLT扩展功能,其中最有趣的一个功能就是trace。
本文译自Builder.com,未经许可请勿转载

Xalan XSLT处理器目前已经成为很多XML程序既成事实的标准了。这个特殊的处理器之所以如此流行是因为它提供了一个标准的接口以及在众多免费软件中突出的可靠表现。

Xalan还提供一些非标准的XSLT扩展功能。这其中最有趣的一个功能就是Xalan的trace功能了。下面就让我们看看如何才能在你的XSLT过程中使用这个功能。

A sample run-through

出于篇幅考虑,我不在这里列出XML代码和XSL文档了。不过我们用的这些文档和代码都很简单,你完全可以用自己的XML和XSL源文件来实践文中讲到的内容。

我们首先从什么是trace和它是怎样和Xalan一起工作说起。 Trace 是一种当特定事件发生时提供钩子或者信号的机制。

例如,在一个SAX解析器中,你规定了当XML事件发生时你的句柄函数会启动XML文档解析过程;在Xalan trace中,你可以定义一个trace类来实现TraceListener接口。当处理器遇到各种XSL事件,就会通过呼叫TraceListener接口把它们发给TraceListener。

两种使用TraceListener的方法

有两种方法可以使用TraceListeners。第一种,你可以使用现有的PrintTraceListener类,这个类包含在Xalan包中。你也可以自己编写TraceListener类以及句柄事件。相比较而言,使用PrintTraceListener是个更简单有效的方法,尤其是当你还是一个刚刚了解XSL跟踪的新手时。因此,在本文里我只介绍这个方法的使用。

你也可以建立自己的类来实现TraceListener接口功能,并提供TraceListener中定义的功能函数,之后就可以注册这个你自己写的TraceListener了。方法如下:


百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134