如何从过滤器访问grails中的UrlMapping变量?

时间:2013-12-12 21:54:38

标签: grails spring-security

我正在使用Grails 2.1.5和Spring Security Core插件。 我已经重写了WebSecurityExpressionRoot,将hasPermission方法的2个签名添加到Web表达式范例中。 此方法在applicationContext中按名称委托给类,并将请求作为参数和任意字符串调用,以提供更多详细信息(如果有的话)。

在我的委托类中,我需要能够访问参数来评估用户是否可以访问所请求的资源,这很好但是请求还没有包含从UrlMappings定义的变量。

我尝试从applicationContext获取grailsUrlMappingsHolder,但是当我用有效的uri调用它的匹配方法时,我什么都没得到。

我已经没时间了,可能必须自己解析request.getRequestURI()以尝试在没有请求参数有效的情况下推断id,但这不会将id映射到id不是最后的地址。

我真的很讨厌在这里重新发明轮子而且我不想错过使用UrlMappings来充分发挥其潜力,但他们定义的变量(在我的情况下)在我进入控制器之前是不可用的。 / p>

1 个答案:

答案 0 :(得分:2)

相关问题