Struts 2 迭代器对象与 Spring Security 上下文的比较

发布于 2024-08-21 04:10:19 字数 560 浏览 3 评论 0原文

假设我在对象列表上使用 Struts 2 迭代标记。每个对象都有一个名为creatorUserId 的属性。

我想将 CreatorUserId 与当前登录用户的 ID 号进行比较。

如何在 JSP 页面中使用 Spring Security 和 Struts 2 来做到这一点?

显示当前用户的 ID 号

显示当前迭代器项的creatorUserId。

我想做:

<s:if test="%{creatorUserId == <security:authentication property='principal.userID' />}">

但这不是一个合法的表达方式。

任何人都可以帮助解决语法问题吗?

Suppose that I am using the Struts 2 iterate tag on a list of objects. Each object has a property called creatorUserId.

I would like to compare the creatorUserId with the Id number of the currently logged in user.

How do I do this with Spring Security and Struts 2 in the JSP page?

<security:authentication property="principal.userID" /> displays the current user's ID number

<s:property value="creatorUserId" /> displays the current iterator item's creatorUserId.

I would like to do:

<s:if test="%{creatorUserId == <security:authentication property='principal.userID' />}">

but it is not a legal expression.

Can anyone help with the syntax?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

赠意 2024-08-28 04:10:19

我不熟悉 Struts,但 有一个 var 属性,可将其结果导出为命名上下文属性:

<security:authentication var = "userId" property = "principal.userID" /> 
<c:if test = "%{creatorUserId == userId}"> 

I'm not familiar with Struts, but <security:authentication> has a var attribute to export its result as a named context attribute:

<security:authentication var = "userId" property = "principal.userID" /> 
<c:if test = "%{creatorUserId == userId}"> 
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文