如果您希望用户可以访问以下文件:/WEB-INF/pages/login.jsp
您应该创建一个 servlet,并且应该更改 html 或 jsp 文件中的链接:
<a href="/pages/login.jsp"> login page </a>
创建一个 servlet:将此行添加到您的 web.xml 文件中:
<servlet-mapping>
<servlet-name>accessFiles</servlet-name>
<url-pattern>/pages/*</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>accessFiles</servlet-name>
<servlet-class>yourclass</servlet-class>
</servlet>
然后创建扩展 servlet 的 yourclass.java:
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class yourclass extends javax.servlet.http.HttpServlet {
private String message;
public void init() throws ServletException
{
}
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException
{
String pathInfo = request.getPathInfo();
request.getRequestDispatcher("/WEB-INF/pages/" + pathInfo).forward(request, response);
}
public void destroy()
{
// do nothing.
}
}
getPathInfo() 将返回应该工作的 servlet 模式 (/pages/) 之后的 URL 部分。
您还可以在 /WEB-INF/pages/ 目录下添加更多 jsp 文件,并通过此 servlet 将用户转发到所需页面。