捕获jsp页面500,404错误,页面不显示错误码
2011-11-11 15:38
一:Tomcat Error Page配置
如果JSP页面出现异常,就会转到tomcat自动的那个异常页面,页面不怎么友好。jsp标准中提供了error page的配置,可以自己定义当出现错误时跳转到哪个页面。这个配置在web.xml里面进行配置,下
面一步步来实现自定义错误页面。
1.首先,在\Tomcat 6.0\conf\web.xml加入下面的标签:
或者在web project项目下的WebRoot-->WEB-INF--> 下的web.xml(一般配置项目的,不要乱改tomcat配置)
<error-page>
<error-code>400</error-code>
<location>/error400.html</location>
</error-page>
<error-page>
<error-code>404</error-code>
<location>/error404.html</location>
<error-page>
<error-code>500</error-code>
<location>/error.jsp</location>
</error-page>
解释一下,error-code是错误代码,location是转向页面。如果这个配置成功,当服务器出现这个错误代码的时候,就会跳转到location这个页面。location可以是html文件,也可以是jsp页面。
2.下面编写一下error.jsp页面的代码,例如:
<contentType="text/html;charset=Big5" isErrorPage="true"%>
<html>
<head><title>出现错误</title></head>
<body>
<H1>错误:</H1><%=exception%>
<H2>错误内容:</H2>
<%
exception.printStackTrace(response.getWriter());
%>
</body>
</html>
因为这个页面调用了exception内置对象,所以isErrorPage必须为true。
3.不仅可以根据html的错误代码来条转页面,也可以按异常类型来进行跳转,例如:
<error-page>
<exception-type>javax.servlet.ServletException</exception-type>
<location>/errorhandler.jsp</location>
</error-page>
不仅可以使用jsp内置exception对象来取得异常,也可以取得request中的attribute。例如:
<contentType="text/html;charset=Big5" isErrorPage="true"%>
<html>
<head><title>错误信息</title></head>
<body>
错误码: <%=request.getAttribute("javax.servlet.error.status_code")%> <br>
信息: <%=request.getAttribute("javax.servlet.error.message")%> <br>
异常: <%= exception.getMessage() %>
异常: <%=request.getAttribute("javax.servlet.error.exception_type")%> <br>
</body>
</html>
二: Error Page在IE下不能转发的问题
这是IE自身的设定导致的,经过百度,找到几个解决办法:
1, IE设定 工具-->Internet选项-->高级--->显示http友好错误信息(取消选择) , 这样就可以了
2, 设置指定错误页页状态为正常,来告诉IE这不是一个服务器错误, 从而不显示IE的自定义错误页
<%
response.setStatus(200); // 200 = HttpServletResponse.SC_OK
%>
3.提醒:
以上页面都需要做大一点(>=2kB),否则不起作用。
原因:tomcat把这样的页面字节限制在不少于多少字节。
401---验证错误
404----访问的资源不存在
405—访问的资源不允许
500—代码错误
jsp常见错误代码
文章分类:Java编程
jsp常见错误代码
你用的是weblogic还是tomcat服务器。?出现404和500错误是初学jsp的朋友经常遇到的问题。
IIS状态代码的含义
概要
当用户试图通过HTTP或文件传输协议(FTP)访问一台正在运行Internet信息服务(IIS)的服务器上的内容时,IIS返回一个表示该请求的状态的数字代码。该状态代码记录在IIS日志中,同时也可能在Web浏览器或FTP客户端显示。状态代码可以指明具体请求是否已成功,还可以揭示请求失败的确切原因。
更多信息
日志文件的位置
在默认状态下,IIS把它的日志文件放在%WINDIR\System32\Logfiles文件夹中。每个万维网(WWW)站点和FTP站点在该目录下都有一个单独的目录。在默认状态下,每天都会在这些目录下创建日志文件,并用日期给日志文件命名(例如,exYYMMDD.log)。
HTTP
1xx-信息提示
这些状态代码表示临时的响应。客户端在收到常规响应之前,应准备接收一个或多个1xx响应。
100-继续。
101-切换协议。
2xx-成功
这类状态代码表明服务器成功地接受了客户端请求。
200-确定。客户端请求已成功。
201-已创建。
202-已接受。
203-非权威性信息。
204-无内容。
205-重置内容。
206-部分内容。
3xx-重定向
客户端浏览器必须采取更多操作来实现请求。例如,浏览器可能不得不请求服务器上的不同的页面,或通过代理服务器重复该请求。
301-对象已永久移走,即永久重定向。
302-对象已临时移动。
304-未修改。
307-临时重定向。
4xx-客户端错误
发生错误,客户端似乎有问题。例如,客户端请求不存在的页面,客户端未提供有效的身份验证信息。400-错误的请求。
401-访问被拒绝。IIS定义了许多不同的401错误,它们指明更为具体的错误原因。这些具体的错误代码在浏览器中显示,但不在IIS日志中显示:
401.1-登录失败。
401.2-服务器配置导致登录失败。
401.3-由于ACL对资源的限制而未获得授权。
401.4-筛选器授权失败。
401.5-ISAPI/CGI应用程序授权失败。
401.7–访问被Web服务器上的URL授权策略拒绝。这个错误代码为IIS6.0所专用。
403-禁止访问:IIS定义了许多不同的403错误,它们指明更为具体的错误原因:
403.1-执行访问被禁止。
403.2-读访问被禁止。
403.3-写访问被禁止。
403.4-要求SSL。
403.5-要求SSL128。
403.6-IP地址被拒绝。
403.7-要求客户端证书。
403.8-站点访问被拒绝。
403.9-用户数过多。
403.10-配置无效。
403.11-密码更改。
403.12-拒绝访问映射表。
403.13-客户端证书被吊销。
403.14-拒绝目录列表。
403.15-超出客户端访问许可。
403.16-客户端证书不受信任或无效。
403.17-客户端证书已过期或尚未生效。
403.18-在当前的应用程序池中不能执行所请求的URL。这个错误代码为IIS6.0所专用。
403.19-不能为这个应用程序池中的客户端执行CGI。这个错误代码为IIS6.0所专用。
403.20-Passport登录失败。这个错误代码为IIS6.0所专用。
404-未找到。
404.0-(无)–没有找到文件或目录。
404.1-无法在所请求的端口上访问Web站点。
404.2-Web服务扩展锁定策略阻止本请求。
404.3-MIME映射策略阻止本请求。
405-用来访问本页面的HTTP谓词不被允许(方法不被允许)
406-客户端浏览器不接受所请求页面的MIME类型。
407-要求进行代理身份验证。
412-前提条件失败。
413–请求实体太大。
414-请求URI太长。
415–不支持的媒体类型。
416–所请求的范围无法满足。
417–执行失败。
423–锁定的错误。
5xx-服务器错误
服务器由于遇到错误而不能完成该请求。
500-内部服务器错误。
500.12-应用程序正忙于在Web服务器上重新启动。
500.13-Web服务器太忙。
500.15-不允许直接请求Global.asa。
500.16–UNC授权凭据不正确。这个错误代码为IIS6.0所专用。
500.18–URL授权存储不能打开。这个错误代码为IIS6.0所专用。
500.100-内部ASP错误。
501-页眉值指定了未实现的配置。
502-Web服务器用作网关或代理服务器时收到了无效响应。
502.1-CGI应用程序超时。
502.2-CGI应用程序出错。application.
503-服务不可用。这个错误代码为IIS6.0所专用。
504-网关超时。
505-HTTP版本不受支持。
FTP
1xx-肯定的初步答复
这些状态代码指示一项操作已经成功开始,但客户端希望在继续操作新命令前得到另一个答复。
110重新启动标记答复。
120服务已就绪,在nnn分钟后开始。
125数据连接已打开,正在开始传输。
150文件状态正常,准备打开数据连接。
2xx-肯定的完成答复
一项操作已经成功完成。客户端可以执行新命令。200命令确定。
202未执行命令,站点上的命令过多。
211系统状态,或系统帮助答复。
212目录状态。
213文件状态。
214帮助消息。
215NAME系统类型,其中,NAME是AssignedNumbers文档中所列的正式系统名称。
220服务就绪,可以执行新用户的请求。
221服务关闭控制连接。如果适当,请注销。
225数据连接打开,没有进行中的传输。
226关闭数据连接。请求的文件操作已成功(例如,传输文件或放弃文件)。
227进入被动模式(h1,h2,h3,h4,p1,p2)。
230用户已登录,继续进行。
250请求的文件操作正确,已完成。
257已创建“PATHNAME”。
3xx-肯定的中间答复
该命令已成功,但服务器需要更多来自客户端的信息以完成对请求的处理。331用户名正确,需要密码。
332需要登录帐户。
350请求的文件操作正在等待进一步的信息。
4xx-瞬态否定的完成答复
该命令不成功,但错误是暂时的。如果客户端重试命令,可能会执行成功。421服务不可用,正在关闭控制连接。如果服务确定它必须关闭,将向任何命令发送这一应答。
425无法打开数据连接。
426Connectionclosed;transferaborted.
450未执行请求的文件操作。文件不可用(例如,文件繁忙)。
451请求的操作异常终止:正在处理本地错误。
452未执行请求的操作。系统存储空间不够。
5xx-永久性否定的完成答复
该命令不成功,错误是永久性的。如果客户端重试命令,将再次出现同样的错误。500语法错误,命令无法识别。这可能包括诸如命令行太长之类的错误。
501在参数中有语法错误。
502未执行命令。
503错误的命令序列。
504未执行该参数的命令。
530未登录。
532存储文件需要帐户。
550未执行请求的操作。文件不可用(例如,未找到文件,没有访问权限)。
551请求的操作异常终止:未知的页面类型。
552请求的文件操作异常终止:超出存储分配(对于当前目录或数据集)。
553未执行请求的操作。不允许的文件名。
常见的FTP状态代码及其原因
150-FTP使用两个端口:21用于发送命令,20用于发送数据。状态代码150表示服务器准备在端口20上打开新连接,发送一些数据。
226-命令在端口20上打开数据连接以执行操作,如传输文件。该操作成功完成,数据连接已关闭。
230-客户端发送正确的密码后,显示该状态代码。它表示用户已成功登录。
331-客户端发送用户名后,显示该状态代码。无论所提供的用户名是否为系统中的有效帐户,都将显示该状态代码。
426-命令打开数据连接以执行操作,但该操作已被取消,数据连接已关闭。
530-该状态代码表示用户无法登录,因为用户名和密码组合无效。如果使用某个用户帐户登录,可能键入错误的用户名或密码,也可能选择只允许匿名访问。如果使用匿名帐户登录,IIS的配置可能拒绝匿名访问。
550-命令未被执行,因为指定的文件不可用。例如,要GET的文件并不存在,或试图将文件PUT到您没有写入权限的目录。
相关推荐
在Java Server Pages (JSP) 开发环境中,配置 `web.xml` 文件来处理常见的 HTTP 错误(如 404 Not Found 和 500 Internal Server Error)是非常重要的。这种做法不仅可以提升用户体验,还能帮助开发者更好地管理和...
在网页设计中,404和500...这样,当JSP应用中出现404或500错误时,用户将看到我们精心设计的页面,而不是默认的、不友好的错误信息。通过这种方式,我们可以提升网站的整体用户体验,同时展示出品牌的关怀和专业性。
本文将深入探讨如何通过web.xml来实现错误处理页面的定制,重点是404(Not Found)和500(Internal Server Error)错误代码的处理。 ### 一、web.xml中的错误处理配置 在web.xml文件中,可以使用`<error-page>`...
这里的`/error/404.jsp`和`/error/500.jsp`是放置在Web应用根目录下的错误处理JSP页面。 404页面模板的设计应该简洁、易懂且具有引导性。它应包含以下元素: 1. 清晰的错误消息:明确告诉用户发生了404错误。 2. ...
6. **错误处理**:错误页面(error.jsp)用于处理各种异常情况,如404页面未找到或500服务器错误。 7. **样式和脚本**:CSS文件(如styles.css)用于页面美化,JavaScript(如scripts.js)处理客户端交互。 8. **...
错误页面通常用于处理像404(未找到)和500(服务器内部错误)这样的常见错误。在给定的文件中,描述了两种不同的错误页面配置方式及其在IE浏览器下的表现。 首先,不推荐的配置方式如下: ```xml <error-code>...
<location>/WEB-INF/views/error/404.jsp ``` 这种方法可以正常工作,但是当我们使用 Shiro 安全框架且配置了非 ServletContainer 的 session 管理器时,问题就出现了。 特殊场景:使用 Shiro 安全框架 在某些...
7. 错误处理与日志记录:系统应包含适当的错误处理机制,如404错误页和500错误页,以及详细的日志记录,便于调试和监控系统的运行状态。 8. 性能优化:对于大型博客系统,可能需要考虑性能优化,如使用缓存技术(如...
通过深入理解这些异常的原因和解决方法,开发者可以更有效地处理JSP中的各种问题,提高应用程序的稳定性和性能。此外,合理利用日志记录工具和监控系统也是预防和解决问题的关键步骤之一。希望本文能帮助大家更好地...
8. **异常处理与错误页面**:为了提供良好的用户体验,项目应包含完善的错误处理机制,比如404错误页面和500服务器错误页面,确保在出现问题时能给出清晰的提示。 9. **部署与维护**:项目最终需要部署到服务器上,...
### JSP虚拟目录格式详解 在Java Web开发中,经常需要使用到JSP技术来构建动态网页。而在部署Web应用时,为了便于管理和访问资源,通常会使用虚拟目录的概念。虚拟目录可以简单理解为一个映射关系,它将服务器上的...
例如,要配置一个处理JSP请求的Servlet,你需要在`web.xml`中定义Servlet映射。 4. **JSP编译过程** - JSP在第一次被请求时会被服务器转换成一个Servlet类,并编译为`.class`文件。了解这个过程可以帮助你在遇到...
在本篇JSP实验总结中,我们探讨了多个关键知识点,涵盖了JSP的运行机制、文件命名规则、Tomcat服务器的管理和错误处理等方面。以下是这些知识点的详细解析: 1. **服务器运行与本地打开的区别**: - 当通过本地...
系统可能包含了错误页面(如404、500错误),以及针对登录失败或表单验证不通过的提示。同时,`session`对象可用于跟踪用户的登录状态,确保只有已登录的会员才能访问特定页面。 8. **MVC模式** 虽然这是一个简单...
常见的HTTP错误状态码如403、404和500等,也都可以通过web.xml进行异常处理的配置。比如,若用户访问了一个不存在的文件,可以返回404错误,并通过配置指定相应的处理页面: ```xml <error-code>404 <location>/...
在实验中,我们首先在 WebContent 目录下创建了 404.jsp 和 500.jsp 两个文件,然后在 web.xml 文件中配置了错误处理页面的路径。 实验的结果是,我们成功地设置了错误处理页面,并且在出现异常时,浏览器可以正确...
5. **error.jsp**:与errorMessage.jsp类似,可能用于统一处理全局的错误和异常,如HTTP状态码为404或500的情况。 6. **zhiling.jsp**:这个名字可能是“指令”的拼音,所以这个页面可能涉及到JSP指令的使用,如、...
JSP状态代码表是网络通信中,服务器向客户端(如浏览器)发送响应时,用来表示请求处理结果的一套标准代码体系。下面将对给定的部分内容中的状态代码进行详细的解析: ### JSP状态代码详解 #### 成功响应 - **100 ...
在Web开发中,JSP(JavaServer Pages)作为一种常用的技术,其在处理HTTP请求时可能会遇到各种异常情况。本文将基于提供的部分信息,深入解析JSP中可能出现的各种HTTP状态码及其含义,这对于理解并解决JSP程序中的...