jsp - web.xml 中的以下条目指的是什么?

标签 jsp tomcat servlets web.xml

一个在 ROOT 下,如 webapps/ROOT/jsp/error.jsp,另一个在 webapps/documents/jsp/errorpage.jsp 下,我的 web.xml 条目如下

<servlet>
    <servlet-name>ErrorPage</servlet-name>
    <servlet-class>org.apache.jsp.jsp.error_jsp</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>ErrorPage</servlet-name>
    <url-pattern>/jsp/errorpage.jsp</url-pattern>
</servlet-mapping>

一般web.xml包含servletservlet-mapping入口。 servlet-mapping 条目包含 url,servlet 条目包含我理解的 servlet 路径。

我无法理解 web.xml 中的上述条目。请帮助我了解一下。

最佳答案

来自 Servlet 规范: servlet 类元素包含完整的 servlet 的合格类名。

您向容器 (tomcat) 指定: org.apache.jsp.jsp.error_jsp 是名为 ErrorPage 的 Servlet 的完全限定类名。

来自 Servlet 规范: servlet-mappingType 定义了一个 servlet 和 url 模式。

你给容器指定url为/jsp/errorpage.jsp的请求必须由服务器ErrorPage响应。

例子:

tomcat 收到第一个(即应用程序启动后对 servlet 的第一个请求)具有 url/jsp/errorpage.jsp 的 HTTP GET 请求;

tomcat 加载类 org.apache.jsp.jsp.error_jsp,创建类的实例,初始化 servlet,然后调用 servlet 的 doGet() 方法。

关于jsp - web.xml 中的以下条目指的是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41586401/

相关文章:

java - 更新在 init() 内部初始化的 Map 对象以及来自 sql 表的值

java - 将 javascript 数组传递给 servlet

java - Liferay Portlet 间通信

java - 在 JSP/Servlet 中安全地传递参数(无框架)

maven - Sakai 10 建筑错误

java - 标签库和变量声明在源页面顶部生成空行

java - 在 PRG 模式中如何在刷新成功页面上删除 ActionMessage

java - 如何检索 tomcat 实例中的 Activity session ?

java - 如何解析命名空间文件位置

servlets - request.getParameter() 无法使用 request.setAttribute() 传递的值