Base-Jsp-4-错误处理和调试

王朝java/jsp·作者佚名  2006-02-01
窄屏简体版  字體: |||超大  

v 错误处理和调试

Jsp容器要求必须完全按照JSP规范中的定义写出每一个JSP元素,这样才能正确的处

理JSP页面。当它发现有什么东西不正确时,就会通知你。但通知的形式根据不同的容

器各有不同,如服务器发现错误,JSP容器知要求返回一个带有针对服务器错误的(500)

的HTTP状态码的应答。

Ø 异常:当某个Java方法中有什么东西发生了错误,它通常会抛出一个异常。异常是一个

特殊的Java对象。抛出一个异常就是一个方法表明自己不知道如何处理某个问题,有

时程序的另一部分可以妥善的处理这个问题,但在许多情况下最好还是告诉用户这个错

误,然后继续前进。

Ø 元素的语法错误

例:1+2+3=<c:out value=”${1+2+3}”>

错误:没有被正确的结束“/>”

错误信息:End of content reached while more parsing required:tag nesting error?

说明:因为这是带有行为体的JSP行为的正确的语法,因此JSP容器不能正确的辨别这

是一个语法错误,相反,它会视其为带有行为元素的开始标记,直到文件结束时,它才

报告没有找到结束标记,因此错误信息没有提供错误发生位置的具体信息。

例:1+2+3=<c:out value=”${1+2+3} default=”Doh!”/>

错误:漏掉了值属性结束处的引号

错误信息:/calc.jsp(10,56) Attribute Doh! Has no value

说明:Tomcat将第2个引号之前的所有内容作为了value的属性值,然后假定下一个单

词(这里是)Doh!)是一个属性,但Doh!后没有跟着等号,所以Tomcat报告该属性没

有值。

例:忘记在页面中添加taglib指令,而使用标记。这样讲不会导致Tomcat报告任何错误。

但所有的自定义行为元素都会被看作模板文本直接输出到页面。

Ø 对于请求时才会捕获的错误,Tomcat只能报告出错信息,但不能报告错误行号。

Ø <c:catch>

属性:var在行为体中的元素抛出java.lang.Throwable的情况下,保存它的变量名称

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航