频 道 直 达 - 新闻 - 培训 - 软件 - 教程 - 前沿 - 组网 - 系统应用 - 安全 - 编程 - 存储 - 操作系统 - 数据库 - 服务器 - 专题 - 产品 - 案例库 - 读书 - 博客 - BBS
51CTO.COM_中国最大的网络技术网站
找资料:

3.3.4 解释或编译的错误处理

作者: Kevin Mukhar Chris Zelenak James L.Weaver Jim Cru. 出处:机械工业出版社  (  ) 砖  (  ) 好  评论 ( ) 条  进入论坛
更新时间:2007-05-28 11:14
关 键 词:解释  编译  处理  指南  Java EE 5 开发指南
阅读提示:《Java EE 5 开发指南》第3.3.4节“解释或编译的错误处理”主要介绍关于如何发现和解决解释或者编译上的问题,供大家参考!

Apress公司很有经验的技术团队对本书的代码进行了评审和测试,我们希望所有这些代码都能很好地工作,当然最终也实现了这个目标。

但是,有时事情并非像我们所希望的那样。当我们输入本书的代码或者开发自己的JSP时,或多或少都会遇到一些解释或者编译上的问题。下面将关于如何发现和解决这些问题给出一些帮助。

JSP的规范里列举了不少发生解释错误的情形。比如,page指令出现多次,但是任何一个属性都只能定义一次。如果同样的属性出现两次,那么第二次的值必须和第一次相同,否则就会出现解释错误。

为了更好地理解,请看前面的welcome.jsp例子(清单3ˉ1)。随便在该文件的某个地方添加下面这行代码:

然后在Tomcat中重新部署这个JSP应用。当试图载入欢迎页面时,出现图3ˉ10所示的错误。这种情况下,Tomcat会发送一个特定格式的错误页面。根据服务器的不同,看到的错误信息可能稍有不同。

图3ˉ10 Tomcat显示解释问题的栈轨迹信息,这些信息对于定位和修正错误很有用

尽管这张图没有显示完整的错误信息,但是看到的异常信息栈轨迹的第一行如下:

如图所示,这些栈轨迹告诉我们这个错误出现在哪个文件(welcome.jsp)的哪一行和哪个字符(10,0),而且对错误也做了清楚的描述。根据这些信息,我们应该很容易找到该文件的第10行,发现它违反了errorPage的使用规范,然后修正它。

但是,编译错误有时却不太容易定位。再回到welcome.jsp页面,删除重复的errorPage指令(如果前面你添加了它)。然后,在代码中添加一个多余的大括号,如下:

当我们把这个破坏掉的文件部署到Tomcat后,出现如图3ˉ11的页面。Tomcat再次发送了一个特定格式的errorPage,但是这个页面没有指出JSP源码中哪里出现了错误。实际上,出现了5个错误,第一个是:

图3ˉ11 当服务器不能编译JSP时,它会返回给客户端一个错误页面。编译错误有时比较难定位

这时,你可能感到奇怪了。为什么Tomcat返回的错误页面上说try没有相应的catch?在这个JSP页面中并没有tryˉcatch语句块啊!本章前面曾提到,容器把JSP文件转换成页面的实现类。正是这个实现类的源文件包含了tryˉcatch语句块。只要意识到这点,你很快就应明白是由于添加一个多余的大括号引起了全部的编译错误。但是,在真实情况下你不可能已知添加了错误,所以只知道是JSP出了问题,但是不容易定位和修改这个错误。

解决这个问题的一个办法是查看解释后的源码。如图3ˉ11告诉我们解释后的源码welcome jsp.java的位置,我们可以用编辑器打开它,然后查找错误。这样比在JSP文件中查找要容易些。本例中,栈轨迹告诉我们第一个错误是在解释之后的文件的第43行,实际上,真正的问题是在文件稍后的位置上多出了一个大括号。

有时,错误信息并没有报告JSP在哪行出现了问题,解决这类编译问题的最好方式是回头检查一下Java语法。例如,检查所有代码的行结束符是否是逗号;检查所有的大括号是否匹配;并且用你喜欢的IDE工具自动检查Java文件微小的语法错误,最终得以保证JSP文件不会出现这类问题。

【责任编辑:大海 TEL:(010)68476606-8007】

回书目   上一节   下一节
发表
查看
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 最 大 的 网 络 技 术 网 站 ·
技 术 成 就 梦 想
订阅技术快讯
电子杂志下载
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。
名称:Vista精品应用黄皮书
简介:《Vista精品应用黄皮书》囊括了Vista的各方面内容。此次的精简版,是将里面的内容做了提取,便于用户下载和使用。内容包含了各种Vista的安装与实施、技巧与解析以及各种Vista相关学习文档和相关软件的安全下载。该电子书是了解和应用Vista人员必备的工具手册,并且也是第一本
名称:2006中国IT论坛精品集合
简介:本书由“51CTO论坛推广联盟”制作完成。书中所有内容均来自各联盟成员的论坛(网站)。制作本书的目的是为了集中大家的优势资源,将更多更精彩的内容带给广大技术爱好者。本书是联盟成立以来制作的第一本书。
关键字阅读
频道精选
主编信箱 热线:010-66476606 告诉我们您想看的:专题 文章
关于我们 | 诚聘英才 | 联系我们 | 网站大事 | 意见反馈 | 网站地图
Copyright©2005-2007 51CTO.COM 版权所有