java - forward 找到 MyJsp.jsp 但 url-> 请求的资源不可用

标签 java jsp tomcat

MyServlet 可以通过以下行转发到 MyJsp.jsp

RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/WEB-INF/MyJsp.jsp");
dispatcher.forward(request, response);

如果我输入任何一个 url '...mytomcat:[myportno]/WEB-INF/MyJsp.jsp' 或 '...mytomcat:[myportno]/MyJsp.jsp' tomcat 报告 '请求的资源是无法使用。' (前缀 mytomcat:[myportno] 是正确的 - 它适用于其他页面)。

有什么建议或解释吗?

最佳答案

嗯,这是设计的

出于安全原因,tomcat(或任何其他 servlet 或 Java EE 容器)应该允许响应对 /WEB-INF 下的文件的直接请求,其中您会找到目录 classeslibs。通常也将只能通过从另一个 servlet 转发访问的 jsp 文件放在 /WEB-INF 下。

关于java - forward 找到 MyJsp.jsp 但 url-> 请求的资源不可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26089856/

相关文章:

java Scanner强制用户输入int值

java - 这种情况的抽象语法树?

java - 使用ajax从servlet中检索java对象并使用JSTL打印它

tomcat - 使用java代码停止tomcat中的Web应用程序

java - Virgo tomcat 服务器运行在 3.1.0.release of spring 我的网络应用程序依赖于 3.2.0。我该如何解决这个问题?

java - 正确的 Java RTP/RTCP 堆栈

java - 如何在 openapi yaml 规范中使用 allOf 组合两个组件?

java - HttpSession,session.getAttribute(),问题

java - 如何正确使用 Spring MVC <form :select> tag to show the value of a specific object field into a collection?

java - 使用 CSS3 的 HTML 在 IE11 中正确显示,但在通过 Tomcat 7 呈现时不正确