程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Servlet处理中的“错误分配”是什么?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决Servlet处理中的“错误分配”是什么??

开发过程中遇到Servlet处理中的“错误分配”是什么?的问题如何解决?下面主要结合日常开发的经验,给出你关于Servlet处理中的“错误分配”是什么?的解决方法建议,希望对你解决Servlet处理中的“错误分配”是什么?有所启发或帮助;

容器在异常/错误期间进行的调度称为错误调度。这些通常分派到错误页面。据我所知,没有办法直接进行错误分配。

通过错误分派发出的请求会将分派器类型设置为dispatcherType.ERROR。(在Servlet的服务方法代码中,您可以使用getdispatcherType()获取调度类型。)

以下六个请求范围属性也将在错误分派中设置。

"javax.servlet.error.exception"
"javax.servlet.error.exception_type"
"javax.servlet.error.message"
"javax.servlet.error.request_uri"
"javax.servlet.error.servlet_name"
"javax.servlet.error.status_code"

因此,如果您有一个错误页面,容器将错误重定向到该页面,则可以读取这六个属性以获取更多信息。

http://docs.oracle.com/javaee/6/api/javax/servlet/DispatcherType.htmlhttp://docs.oracle.com/javaee/6/api/javax/servlet/RequestDispatcher.html

您可以使用部署描述符(web.xml)中的标记来设置错误分发。例如,如果您为404错误代码添加了一个错误页面标签,则当发生找不到页面的错误时,容器将分派到该页面。在该错误页面中,可以使用诸如request.getAttribute(“ javax.servlet.error.message”)之类的代码来检索有关该错误的详细信息。例子…

web.xml:

<web-app>
    <error-page>
        <error-code>404</error-code>
        <location>/error.Jsp</location>
    </error-page>
</web-app>

error.Jsp:

<!DOCTYPE HTML>
<HTML>
    <head>
        <Title>404 Error</Title>
    </head>
    <body>
        The page was not found. You requested <%= request.getAttribute("javax.servlet.error.message") %> but it was not found. Sorry.
    </body>
</HTML>

在上述示例应用程序中,如果未找到客户端请求的页面,或者您在某处使用response.sendError(“ 404”,“ …”),则容器将向error.Jsp进行错误分派。

JsP错误处理机制(使用“ errorPage”和“ isErrorPage”页面指令)在这里也适用。

解决方法

javax.servlet.AsyncContext接口的javadoc说:

但是我在任何地方都找不到“错误分发”的含义。实际上,有一个Apache
Bug令人惊叹。(用他们的确切话说:“我也没有看到’错误分配’的定义。”)

但是,当然,必须对此有一个明确的定义以及如何使用它。有人知道吗?

大佬总结

以上是大佬教程为你收集整理的Servlet处理中的“错误分配”是什么?全部内容,希望文章能够帮你解决Servlet处理中的“错误分配”是什么?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: