Java 在尝试加载 CSS 文件时重定向到登录页面

标签 java html css jsp

编辑**

我设法加载了 CSS,但它重定向回 l​​ogin.jsp,因此它加载的是 HTML 而不是 CSS。知道为什么吗?


我试图将自定义 CSS 文件添加到我在 login.jsp 页面上的标题 当我运行它时,CSS 没有运行并且出现错误:

too many redirects

我不确定如何解决这个问题。

我试图找到一种允许 css/js/img 文件的方法,但我不熟悉 web.xml 文件以及验证这些条目的最佳实践。

错误信息:

GET http://localhost:8080/AppV2/resource/css/login net::ERR_TOO_MANY_REDIRECTS

login.jsp页面:

    <%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<jsp:include page="header.jsp" />
<link rel="stylesheet" href="resource/css/login.css">
<body>
    <%
        String login_msg = (String) request.getAttribute("error");
        if (login_msg != null)
            out.println("<font color=red size=4px>" + login_msg + "</font>");
    %>  
<div class = "container">
    <div class="wrapper">
        <form action="" method="post" name="Login_Form" class="form-signin">       
            <h3 class="form-signin-heading">Welcome Back! Please Sign In</h3>
              <hr class="colorgraph"><br>

              <input type="text" class="form-control" name="Username" placeholder="Username" required="" autofocus="" />
              <input type="password" class="form-control" name="Password" placeholder="Password" required=""/>            

              <button class="btn btn-lg btn-primary btn-block"  name="Submit" value="Login" type="Submit">Login</button>            
        </form>         
    </div>
</div>  
</body>
</html>

Login.java Servlet:

public class LoginServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;

    public LoginServlet() {
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        // Set standard HTTP/1.1 no-cache headers.
        response.setHeader("Cache-Control", "private, no-store, no-cache, must-revalidate");
        // Set standard HTTP/1.0 no-cache header.
        response.setHeader("Pragma", "no-cache");
        if ((request.getParameter("password") == "") && (request.getParameter("password") == "")) {
            request.setAttribute("error", "Invalid Username or Password");
            RequestDispatcher dispatcher = this.getServletContext().getRequestDispatcher("/WEB-INF/views/login.jsp");
            dispatcher.forward(request, response);
        } else if ((request.getParameter("password") == null) && (request.getParameter("password") == null)) {
            RequestDispatcher dispatcher = this.getServletContext().getRequestDispatcher("/WEB-INF/views/login.jsp");
            dispatcher.forward(request, response);
        } else {
            String psw = request.getParameter("password");
            String usr = request.getParameter("username");
            List res = userLoginUtils.logIn(usr, psw);
            Boolean debugFlag = true;
            if (res.get(0).equals("true") || debugFlag == true) {
                this.writeToSession(res.get(1), request);
            } else {
                request.setAttribute("error", "Invalid Username or Password");
                RequestDispatcher dispatcher = this.getServletContext().getRequestDispatcher("/WEB-INF/views/login.jsp");
                dispatcher.forward(request, response);

            }
            response.sendRedirect("index");
        }
    }

谢谢

最佳答案

首先,将您的标签放入您的标签中(我假设您的标签在 header.jsp 中?)

然后关于你的文件路径: 你不能像你那样导入它。 尝试以下(这里使用 EL 表达式)

<link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/resource/css/login.css" />

关于Java 在尝试加载 CSS 文件时重定向到登录页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48265254/

相关文章:

css - css3 中的过渡应该是什么

java - D/斯基亚 : libjpeg error 117 <Corrupt JPEG data: premature end of data

java - 如何使用 log4j 将希伯来语字符串写入日志文件

java - ListSelectionListener 接口(interface)中的 valueChanged 方法存在问题

html - 无法更改 CSS 中导航元素的背景颜色属性

javascript - 隐藏弹出框功能 恢复打开弹出框功能

html - 光标在 IE10 中超出文本输入范围

java - Hibernate:如何连接表与不是外键的列

html - 滚动时标题中的内容可见

javascript - Firefox box-sizing + expanding div = missing padding?