【发布时间】:2017-07-28 17:18:05
【问题描述】:
在 servlet 中是:
<% session.setAttribute("customer",user1); %>
其中 user1 是用户对象
在我的jsp中是:
User user1 = (User)session.getAttribute("customer");
在html正文中
<h1> welcome.... <%= user1.getUserNm(); %> </h1>
问题是: 当我清除浏览历史记录/会话变得无效/用户 obj 变为空时, 上面一行有空指针异常 我试过了:
<%
if(session.getAttribute("customer")==null){
response.sendRedirect("login.jsp?msg=You are not logged in..!");
}
%>
我尝试重定向到登录页面,但它没有发生,只是它给出了相同的错误。 即使我尝试将 user.getusrnm() 与 null 进行比较,但它不起作用。
【问题讨论】:
-
不要。在控制器方法中编写所有这些逻辑,并仅使用 JSP 来格式化数据对象。
-
没找到你。请解释清楚
-
在显示用户名之前检查 null
-
我试过了,但是没用...stackoverflow.com/users/7403180/sforsujit...
-
使用 rd.include(request, response);在 response.sendRedirect("login.jsp?msg=你没有登录..!");其中 rd 是 requestDispatcher