【问题标题】:Define root servlet and CSS [duplicate]定义根 servlet 和 CSS [重复]
【发布时间】:2016-05-15 15:36:09
【问题描述】:

我想这样做。如果有人使用此 url http://localhost:8080/ url 登录。他应该重定向到登录 servlet。所以我为此创建了一个代码

@WebServlet(name = "RootController", urlPatterns = {"/"})
public class RootController extends HttpServlet {

    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        try (PrintWriter out = response.getWriter()) {

        }
    }


    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {


        RequestDispatcher out = request.getRequestDispatcher("/login");

        out.forward(request, response);


    }

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        processRequest(request, response);
    }

    @Override
    public String getServletInfo() {
        return "Short description";
    }

}

但是当我像这样链接 CSS 和 js 文件时

<link href="resources/css/css/bootstrap.min.css" rel="stylesheet" type="text/css"/>

那些未链接的文件。但是我将根 servlet urlPatterns 更改为 /abc 它可以正常工作。这是为什么?资源文件夹的路径是正确的。我应该怎么做才能完成我的任务?

【问题讨论】:

    标签: java jsp servlets


    【解决方案1】:

    当您点击 URL“http://localhost:8080/”时,它会将您重定向到您在 web.xml 中定义的默认页面。例如,在您的 web.xml 中,如果您已定义如下。当您点击“http://localhost:8080/”时,您的网址将加载 index.jsp

    <webapp>
    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>    
    </webapp>
    

    因此,在您的“@WebServlet”注释中添加这样的 url 模式 @WebServlet(name = "RootController", urlPatterns = {"/index.jsp"}) 或者 取一个空的 urlpattern "" 并在 doGet 中编写以下代码

    if(request.getServletPath().equals("/index.jsp")) {
        response.sendRedirect("login")
    }
    

    【讨论】:

      【解决方案2】:

      尝试空网址模式@WebServlet(name = "RootController", urlPatterns = {""})

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-04-21
        • 2020-07-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-10-24
        • 1970-01-01
        相关资源
        最近更新 更多