如何从控制器获取jsp上的对象?
问题描述:
我想从控制器获取错误消息。 在我的控制器,我有这样的代码:如何从控制器获取jsp上的对象?
ModelAndView result = new ModelAndView();
result.addObject("error", Messages.SUCH_LOGIN);
result.setViewName(Views.REGISTRATION_USER);
return result;
在我的jsp页面:
<c:out value="${error}"></c:out>
但它不会显示任何东西。
我想补充一点:
<c:if test="${error == null}">
<p>TEST</p>
</c:if>
我又看见“TEST”我的网页上,之前控制器添加此对象。从控制器重定向后,我再次看到这一点,但我的网址是:http://localhost:8080/registrationUser.jsp?error=There+is+already+user+with+such+login
我做错了什么?
答
问题出在我的Views.REGASTRATION_USER
,我用的是"redirect:"
,所以,据我看来,它破坏了我的模型,${error}
为空。编辑完这个字符串后,我可以看到这个错误信息。
你使用Jsp 2.0或更高版本吗?如果不是在较低版本的jsp中,您需要启用EL。你也可以确认,如果你的jsp顶部的jstl标签声明为 – user641887
@ user641887在页面顶部:'',jsp的版本:2.3 – Maksim
尝试打印'Messages.SUCH_LOGIN'来查看你是否得到了某些东西 –