如何处理Property or field <foo> cannot be found on object of type <bar>
在 SpEL ?
例如如果数据上没有 placeId 属性,那么它不应该给我上述错误并返回 differentValue。
"${@block?.value?.data?.placeId ?: 'differentValue'}"
最佳答案
这是不正确的。 SpEL 只是另一种 JVM 语言。它不是像 JavaScript 这样的非类型语言。那么,如果您的 Java 类没有某些属性,会发生什么情况呢?右:Property or field <foo> cannot be found on object of type <bar>
.
因此表达式中的逻辑一定不能依赖于某些非 Java 反射逻辑。
你肯定需要有像 instanceof
这样的东西,但您可能无需通过强制转换来访问现有属性。
关于java - 如何处理 "Property or field cannot be found on object in SpEL"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52321764/