如何在jsp scriptlet中调用$ {SPRING_SECURITY_LAST_EXCEPTION.message}?

时间:2017-07-03 13:21:51

标签: jsp scriptlet

我必须删除jstl库(许可证问题)。使用jsp scriptlet重写<c:out value="${SPRING_SECURITY_LAST_EXCEPTION.message}"/>的正确方法是什么?

我在其他几个代码中尝试了以下代码:

<%= session.getAttribute("SPRING_SECURITY_LAST_EXCEPTION.message") %>

但它返回null。

此外,我不能简单地更改为${SPRING_SECURITY_LAST_EXCEPTION.message},因为所有特殊的html字符都需要转义。

1 个答案:

答案 0 :(得分:0)

SPRING_SECURITY_LAST_EXCEPTION是一个会话属性,其中存储了一个spring异常,因此您必须按如下方式访问它:

<%= session.getAttribute("SPRING_SECURITY_LAST_EXCEPTION").getMessage() %>

SPRING_SECURITY_LAST_EXCEPTION 表示异常,消息是其属性之一。

修改

<%= ((AuthenticationCredentialsNotFoundException)session.getAttr‌​ibute("SPRING_SECURI‌​TY_LAST_EXCEPTION"))‌​.getMessage() %>工作了。当然,我必须导入AuthenticationCredentialsNotFoundException