[英]Spring Security - Authentication Failure - Blank Message
我正在研究spring-mvc网络应用程序。
在我的登录页面上,如果用户输入了错误的凭据,我想显示一条错误消息。
因此,我尝试使用Spring Security来显示错误消息,但无法显示任何消息。
login.jsp的
对于登录表单,我已将绑定完成为:
<form method="post" action="<c:url value='/j_spring_security_check' />" id="loginForm">
.... login ui
</form>
用于显示错误:
<c:if test="${not empty param.error}">
<div>
<c:out value="${SPRING_SECURITY_LAST_EXCEPTION.message}"/>
</div>
</c:if>
安全的context.xml
<form-login login-page="/login" default-target-url="/home" always-use-default-target="false" authentication-failure-url="/login?error=true" />
启用所有这些选项后,仍然无法在提供的错误凭据上显示错误消息。
如果您需要其他任何信息,请告诉我。
PS:很快,请休息整个配置,并且应用程序运行良好。 用户可以登录。 我扩展了UserDetailsContextMapper,对于匿名用户,我抛出了一个异常UsernameNotFoundException
最后,我找出了问题所在。 此消息存储在会话中,并保存在我的页面上:
<%@ page session="false"%>
我将其更改为:
<%@ page session="true"%>
它开始工作。 我得到的另一个好信息是,如果要显示自定义错误消息,那么重写这些消息非常简单。 有关详细信息,请参阅此链接。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.