我目前正在使用Spring Security来管理Struts2应用程序上的登录和会话。 要在JSP页面中检索已记录的用户,我将使用sec标记lib,将以下内容导入到我的jsp中。
<%@ taglib prefix="sec" uri="http://www.springframework.org/security/tags"%>
所以要打印我的登录用户,请使用<sec:authentication property="principal.username" />
。
我正在迭代通过被调用的动作收到的java.util.List
,所以通过这样的方式迭代它:
<s:iterator value="#request.myList" var="userEmail">
My value: <s:property value="#userEmail"/>
</s:iterator>
我正在寻找一种方法来测试列表项以检查是否与记录的用户相同,但我无法在sec
标记内检索<s:if>
。
有谁知道如何将两者结合起来?并做一些类似
的事情 <s:if test="%{<sec:authentication property="principal.username" /> == #userEmail}">
答案 0 :(得分:1)
如何使用会话中的信息:
<s:if test="#session.SPRING_SECURITY_CONTEXT.authentication.principal.username == #userEmail">