2

有没有办法在 SpEL 表达式中访问会话对象?具体来说,我在春季安全中需要它,例如

<intercept-url pattern="/somePage.html" access="session.getAttribute('someTemporaryFlag') != null" />

此代码返回:EL1008E:(pos 0): Field or property 'session' cannot be found on object of type 'org.springframework.security.web.access.expression.WebSecurityExpressionRoot'。有一个与此相关的问题:Spring EL 变量列表,但它没有回答我的问题。

具有安全角色的解决方案是不可接受的。

4

1 回答 1

1

我认为您无法直接访问会话对象,但您可以访问请求对象并从中获取会话。

<intercept-url pattern="/somePage.html" 
       access="request.session.getAttribute('someTemporaryFlag') != null" />
于 2013-10-11T09:23:30.653 回答