【发布时间】:2019-02-14 11:21:56
【问题描述】:
我有项目 Maven 网络应用程序。我有一些带有 HTML 代码和 JSP 标记的 JSP 文件。我在本地数据库和一些 servlet 中有一个连接。
问题是当我登录到应用程序时,我想为登录的用户打印一条欢迎消息。 这是应该显示欢迎消息的标签:
<div class="hello-text"><h1>Hello <span>${sessionScope.user_name}</span>. This is yours stats:</h1></div>
当我登录时,我仅有的文字是“你好 ${sessionScope.user_name}。这是你的统计数据:
这是我用于登录的 servlet 代码:
@WebServlet("/login")
public class UserLoginServlet extends HttpServlet {
private static final long serialVersionUID = 2717450811223035557L;
private UserRepository userRepository = new UserRepositoryBean();
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.setContentType("text/html");
String login = req.getParameter("login");
String password = req.getParameter("password");
PrintWriter writer = resp.getWriter();
if (login == null | login.isEmpty() | password == null | password.isEmpty()) {
writer.write("ERROR");
return;
} else {
if (userRepository.validateUser(login, password)) {
HttpSession session = req.getSession();
session.setAttribute("user_name", login);
resp.sendRedirect("profile.jsp");
} else {
req.setAttribute("error", "Invalid login or password. Try again.");
req.getRequestDispatcher("login.jsp").forward(req, resp);
}
}
writer.close();
}
}
为什么我没有消息,例如,您好管理员。这是你的统计数据:? 我总是有你好 ${sessionScope.user_name}。这是你的统计数据:...
【问题讨论】:
-
确保声明正确版本的 servlet 规范以启用表达式语言 stackoverflow.com/questions/30080810/…
标签: java jsp servlets jakarta-ee