本文实例讲述了jsp中内建exception对象时出现500错误的解决方法。分享给大家供大家参考,具体如下:
尝试使用jsp的内建exception对象,写了下面三个文件。思路很简单,文件index若提交字串为空,则get抛出异常,交由error.jsp处理。但实际却不能正常运行,会出现ie的500错误页面。环境为tomcat 5.5,ie6.0。
在sun的论坛上有人贴出了原因,是ie的某个设置。tomcat5.0以后的版本error page在处理时会返回error code 500。而ie得到code 500后会检查该页面的长度,当长度低于某个值时,它会用自己默认的500出错页面来代替制定的error page。它称之为“用户友好性”(这个问题耗了我不少时间,一点也不友好来着)。
那么解决方法可以是修改ie
设置:取消ie“工具--internet选项--高级--显示友好http错误信息”选项;或者增加你的error page的长度。
index.jsp
<html>
<head>
<title>index</title>
<head>
<body>
<form action="get.jsp" method="get">
<input type="text" name="text"><br>
<input type="submit" value="submit">
</form>
</body>
</html>
get.jsp
<%@page language="java" errorpage="error.jsp"%>
<html>
<head>
<title>index</title>
<head>
<body>
<%
string gettext = request.getparameter("text");
out.print(gettext);
if (gettext.equals("")) {
out.print("empty");
throw new exception("empty value");
}
%>
</body>
</html>
error.jsp
<%@page language="java" iserrorpage="true"%>
<html>
<head>
<title>index</title>
<head>
<body>
<%
out.print(exception.getmessage());
%>
</body>
</html>
个人总结
所谓增加长度,就是在error.jsp文件中,多复制些文字内容,就能正常运行了。
希望本文所述对大家jsp程序设计有所帮助。
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!