当前位置:网站首页>九十八、freemarker框架报错 s.e.ErrorMvcAutoConfiguration$StaticView : Cannot render error page for request
九十八、freemarker框架报错 s.e.ErrorMvcAutoConfiguration$StaticView : Cannot render error page for request
2022-04-23 11:53:00 【托马斯-酷涛】
报错信息
2022-04-22 12:59:38.904 ERROR 16164 --- [nio-8888-exec-1] freemarker.runtime : Error executing FreeMarker template
freemarker.core.InvalidReferenceException: The following has evaluated to null or missing:
==> pageContext [in template "courseAdd.html" at line 84, column 29]----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
--------
FTL stack trace ("~" means nesting-related):
- Failed at: ${pageContext.request.contextPath} [in template "courseAdd.html" at line 84, column 27]
----
后端代码
前端代码
其功能要实现下拉框,添加了option却显示不出来(如下图),并且后端数据已经拿到(打印在控制台了),心想就是前端这里拿不到数据。
回头看报错信息,发现
o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is freemarker.core.InvalidReferenceException: The following has evaluated to null or missing:
大致意思为:Servlet请求处理失败,可能为空值或缺失值
问题分析
那应该就是空值的问题,导致下拉框无法正常显示,teacherNames中存在空值
看日志 给出了处理办法即(上方标红加粗的提示) 添加
<div class="layui-input-block">
<!-- <#if myOptionalVar??>when-present<#else>when-missing</#if>-->
<select id="baseCourseSelect" lay-search>
<option>--请选择——</option>
<#list teacherNames as tname>
<option value="${tname}">${tname}</option>
</#list>
</select>
</div>
后来通过查找找到了最终解决方法:
问题解决
在配置项(application.yml)中加入全局去空值的设置:
spring.freemarker.settings.classic_compatible= true
注意 true 前面有一个空格,不然不会生效。
最终效果
版权声明
本文为[托马斯-酷涛]所创,转载请带上原文链接,感谢
https://blog.csdn.net/m0_54925305/article/details/124343229
边栏推荐
- Tensorflow common functions
- ThinkPHP adds image text watermark to generate promotion poster with QR code
- 论坛系统数据库设计
- A detailed explanation of head pose estimation [collection of good articles]
- golang之笔试题&面试题01
- Laravel绑定钉钉群警报(php)
- Nacos Foundation (7): Configuration Management
- 第四章 为IM 启用填充对象之强制填充In-Memory对象:教程(IM 4.7)
- Blog post navigation (real-time update)
- C# F23. Stringsimilarity Library: String repeatability, text similarity, anti plagiarism
猜你喜欢
Interpretation of biological recognition in robot programming course
解读机器人创造出来的艺术
零钱兑换II——【LeetCode】
IDEA 代码质量规范插件SonarLint
论坛系统数据库设计
云呐|固定资产盘点中,支持多种盘点方式(资产清查盘点)
让中小学生在快乐中学习的创客教育
魔域来了H5游戏详细图文架设教程
Advanced file IO of system programming (13) -- IO multiplexing - Select
Interpretation of 2022 robot education industry analysis report
随机推荐
抓包整理————tcp 协议[八]
[web daily practice] eight color puzzle (float)
Compress the curl library into a sending string of utf8 and send it with curl library
第五章 使用In-Memory表达式优化查询(IM 5.1)
创客教育中的统筹方案管理模式
redis优化系列(二)Redis主从原理、主从常用配置
Chapter 4 specifies the attribute of the inmemory column on the no inmemory table for im enabled filling objects: examples (Part IV of im-4.4)
Resolution due to AMD not found_ ags_ x64. DLL, unable to continue code execution. Reinstallation of the program may solve this problem, Forza horizon 5
Interpretation of biological recognition in robot programming course
5个免费音频素材网站,建议收藏
PCB的注意事项
How the database fills in IM expressions (IM 5.4)
Golang Pen & interview 01
MQ的了解
怎么进行固定资产盘点,资产盘点报告如何一键生成
论坛系统数据库设计
Sofa weekly | excellent Committee of the year, contributor of this week, QA of this week
IDEA 数据库插件Database Navigator 插件
VMware虚拟机使用esxi 导出硬盘vmdk文件
Simple construction of rebbitmq