java

位置:IT落伍者 >> java >> 浏览文章

在 Java 程序设计中处理 DOM 异常


发布日期:2021年03月30日
 
在 Java 程序设计中处理 DOM 异常

在使用基于Java的XML剖析器时你常常要应付异常(exception)的处理有些异常很容易处理但是有些异常却很难处理在这一篇文章中我们将看到在使用XML文档时碰到的一些常见异常并探讨一下如何正确地处理这些异常

DOM异常

在使用DOM剖析器进行剖析操作的时候XML文档会被立即处理并保存在内存内存里的对象将被处理为一个文档对象模型(Document Object Model)——这基本上就是一种用于访问底层XML文档的面向对象的方法在DOM里处理XML文档的时候很多东西都会出现错误

大多数DOM下的异常都是作为DOMException类的一个实例发生的这一个类支持种不同的具体的异常条件每种条件都被指定为DOMException类的一个成员叫做code除了这个code成员DOMException类还包含一组个静态成员它们被用来确定异常的条件

当DOMException出现的时候如果不检查异常对象里的code那么你就不会知道到底是这些条件中的哪一个导致了这个异常为了正确地处理这个异常你将需要确定是哪个条件导致了这个异常

Listing A显示了一个Java程序这一程序在创建新的DOM文档时由于错误而无法通过 点击这里可以查看程序源代码

要注意我们使用了一种切换机制来确定到底满足了哪个条件这样我们就可以很容易地测试每个条件直到我们找到正确的条件

在以上范例中我们已经在用于无效字符的条件里放置了一条消息当你编译并运行这个例子的时候你会看到这样一条信息存在非法字符(There is an invalid character)你会希望正确地处理每个条件而不是将条件留为空白

你可能想要提取出条件异常的处理(方法)并将它放置到它自己的方法里甚至是它自己的类里那样的话你就可以在你的代码里放入更加简单的异常处理机制例如我们可以创建一个叫做DOMExceptionHandler的新类如Listing B所示可以点击此处查看源代码

既然我们有了用来处理DOM异常的专用处理器类那么我们就可以从我们的处理代码里调用它Listing C里的代码是对DOMFail类的一个修正它使用了我们新的DOMExceptionHandler类可以点击这里查看代码

这个新的类要比我们原来的DOMFail类简单得多它还可以让我们能够更容易地重新使用异常处理器的代码我们现在不用每次需要的时候才剪切和粘贴事件处理器代码而只是调用DOMExceptionHandler类就可以了

上一篇:企业版JavaBean讨论

下一篇:eclipse中加入jad插件的方法