#jsp #session #tomcat
Вопрос:
Сейчас я учусь прыжкам с трамплина,но встречаю странный вопрос… когда я использую session.getAttribute()
,это будет статус 500 на странице . В качестве следующего
<%
User user = (User) session.getAttribute("user");
int id = (int) session.getAttribute("id_new");
out.print("<br>user_name=" user.getUserName());
out.print("<br>id_name=" id);
%>
Но <br>${user} <br>${id_new}
И
<%
out.print("i am crazy!!");
%>
идет правильно
Вот и весь код, который я использую в этих проектах
<head>
<title>Title</title>
</head>
<body>
<%
session.setAttribute("id",1);
response.sendRedirect("./session/test");
%>
</body>
</html>
и контроллер
@SessionAttributes(names ={"user"},types = int.class)
@Controller
@RequestMapping("/session")
public class SessionController {
@Autowired
private UserService userService = null;
@GetMapping("/test")
public String test(@SessionAttribute("id") int id, Model model){
model.addAttribute("id_new",id);
User user = userService.getUser(id);
model.addAttribute("user",user);
return "session/test";
}
}
and the target page
<html>
<head>
<title>Title</title>
</head>
<body>
<%
User user = (User) session.getAttribute("user");
int id = (int) session.getAttribute("id_new");
out.print("<br>user_name=" user.getUserName());
out.print("<br>id_name=" id);
%>
<%--<br>${user}
<br>${id_new}
<%
out.print("i am crazy!!");
%>--%>
</body>
</html>
Я также видел стек ошибок консоли,он выглядит так
,исключение нулевого указателя