java - Spring中需要什么配置才能使用SpEL表达式?正确配置了SpEL表达式却无法使用

 轻裘缓带531 发布于 2022-11-01 19:05

XML中配置如下:


    



    
    

出错信息如下:

       org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mocker' defined in class path resource [beans.xml]: Cannot resolve reference to bean '#{singer.song.toUpcase()}' while setting bean property 'song'; nested exception is org.springframework.beans.factory.BeanExpressionException: Expression parsing failed; nested exception is org.springframework.expression.spel.SpelEvaluationException: EL1004E:(pos 12): Method call: Method toUpcase() cannot be found on com.zdz.util.Song type
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:359)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:108)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1477)
2 个回答
  • 提示写的很清楚song这个类里面没定义upcase这个方法

    2022-11-12 01:54 回答
  • 自己解决了问题,一个是因为song中没有toUpcase方法,一个是因为要把SpEL表达式所在的属性从ref改为value

    2022-11-12 01:54 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有