首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JSP EL和scriptlet -如何避免混合jstl和scriptlet变量

JSP EL和scriptlet -如何避免混合jstl和scriptlet变量
EN

Stack Overflow用户
提问于 2009-07-07 00:20:12
回答 1查看 3.7K关注 0票数 2

通过jsp el访问非属性

在下面的代码中,我需要访问一个不是属性的方法。我还需要一个c:foreach变量作为测试变量。我在处理别人的代码。我对它的设计不是特别满意,但在处理别人的代码时,这很容易。

我更倾向于只在控制器中设置实际的可见角色,但所有数据都是从全局缓存中多个位置读取的。下面的垃圾代码代表了获得所需行为的最少代码行。

//无权访问scriptlet上下文中的角色

">

一个简单的解决方案是..。如果我能做的话:

//不能通过el调用isVisible我不相信

但我很确定你不能这么做。

我正在重写以避免scriptlet,但如果有人有快速解决方案,我会很高兴。

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-07-07 16:18:36

我倾向于只在控制器中设置实际的可见角色,但所有数据都是从全局缓存中多个位置读取的

如果我理解正确的话,应该不是问题。

我假设authUser在session作用域中

代码语言:javascript
复制
session.authUser

如果不是,则设置它:

代码语言:javascript
复制
<c:set var"authUser" value="${session.authUser}" scope="session" />

然后,您所要做的就是找到一种方法,将authUser从会话提供给角色Bean,从而允许您:

代码语言:javascript
复制
<c:if test="${role.isVisible}">

啊,也许不是..

我想我会写一个定制的标签

代码语言:javascript
复制
<mytag:isVisible role="${role}" user="${session.authUser}">
    // do work
</mytag:isVisible>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1089810

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档