gpt4 book ai didi

spring - 如何在 Spring 表达式语言中进行类型转换

转载 作者:行者123 更新时间:2023-12-04 14:32:05 26 4
gpt4 key购买 nike

我正在尝试使用 @PreAuthorize 注释进行访问控制。我需要检查身份验证对象的详细信息中的一些自定义字段。我有一个 CustomWebAuthenticationDetails 类,它是 WebAuthenticationDetails 的子类,包含自定义字段。通常,我会使用以下内容访问 CustomWebAuthenticationDetails 中的自定义字段:

((CustomWebAuthenticationDetails)authentication.getDetails()).getCustomField()

但是,当我尝试在 @PreAuthorize 表达式中使用上述语句(甚至包括 CustomWebAuthenticationDetails 的完全限定路径)时,出现以下错误:
java.lang.IllegalArgumentException: Failed to parse expression ...

我应该如何处理这里的类型转换?

谢谢,

丹尼尔

最佳答案

AFAIK,鉴于 EL 的动态和解释性质,您不需要任何类型转换。如果运行时对象的属性存在,它将找到它,而不关心它的声明类型:

authentication.details.customField

关于spring - 如何在 Spring 表达式语言中进行类型转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10958011/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com