Validates unresolved references and invalid expressions异常问题的解决

使用IDEA学习thymeleaf时,页面报了下面的异常:

翻译过来就是:检查信息:验证未解析的引用和无效的表达式。

找了许久,都找不出问题的根源,上网搜索,网友的意见出奇地一致,都说去修改IDEA的设置,如下图:

实际上这种办法无异于掩耳盗铃,治不了标,更治不了根,从字面意思来看,未解析的引用和无效的表达式,意思是页面上引用patient对象是无效的,特地去调试了后台,发现patient对象有值,并赋值给了前端页面,但是,页面上为什么说patient对象是无效的引用呢。后来,我在另一个页面上得到启发,如果有传到前端的对象可以使用,在IDEA中都会有提示,如下图:

然后我在出错的页面试着用这种方法敲,一直都没有提示,那就说明,后台没有将值传过来,所以直接引用当然报错了,既然查出来的patient对象不为空,那会不会页面路径写得有问题呢,用谷歌浏览器去调试,也没报404或者异常,最后发现还是路径那里的写法有问题,下面是我原来的写法,

 model.addAttribute("patient", patient);
 model.addAttribute("report", report);
 return "/system/NewReport";

 而正确的写法是把system前面的斜杠去掉,这样,前端终于可以引用patient对象了,再也不报异常了。说白了,还是自己基础知识不牢,才出现这种低级错误。

总结:thymeleaf页面出现变量引用出错,应考虑后台路径是否写对,对象是否查到并传给前端。

  • 19
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 12
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值