报错:EL1007E: Property or field 'name' cannot be found on null

2023-05-16

SpringBoot集成thymeleaf做开发遇到的错误

Caused by: org.springframework.expression.spel.SpelEvaluationException: EL1007E: Property or field ‘name’ cannot be found on null


  • 详细信息:(片段)
org.thymeleaf.exceptions.TemplateInputException: An error happened during template parsing (template: "class path resource [templates//admin/types-input.html]")
	
Caused by: org.attoparser.ParseException: Exception evaluating SpringEL expression: "name" (template: "/admin/types-input" - line 59, col 72)
	at org.attoparser.MarkupParser.parseDocument(MarkupParser.java:393) ~[attoparser-2.0.5.RELEASE.jar:2.0.5.RELEASE]
	at org.attoparser.MarkupParser.parse(MarkupParser.java:257) ~[attoparser-2.0.5.RELEASE.jar:2.0.5.RELEASE]
	at org.thymeleaf.templateparser.markup.AbstractMarkupTemplateParser.parse(AbstractMarkupTemplateParser.java:230) ~[thymeleaf-3.0.11.RELEASE.jar:3.0.11.RELEASE]
	... 53 common frames omitted
Caused by: org.thymeleaf.exceptions.TemplateProcessingException: Exception evaluating SpringEL expression: "name" (template: "/admin/types-input" - line 59, col 72)
	at 
org.springframework.expression.spel.SpelEvaluationException: EL1007E: Property or field 'name' cannot be found on null
	at

  • 原因:
    静态页面使用了thymeleaf的表达式接收后台controller传输的对象(数据),但是后台却没有把这个对象传过来,或者传过来一个空对象,所有报错,意思是找不见这个字段(当然对象都没有哪来的字段)。

  • 解决方案:

  1. 在yml配置文件添加:

    mybatis:
      configuration:
        call-setters-on-nulls: true #设置返回字段不为空,前端不报错
    
  2. 后台controller层,再跳转页面时带一个空对象过去就行。例如:

 /**
     * 静态页面跳转
     * @return
     */
    @GetMapping("types/input")
    public String typesInput(Model model) {
        model.addAttribute("type", new Type());
        return "/admin/types-input";
    }

  • 前端代码展示:
<!--表单提交-->
        <form action="#" method="post" th:action="@{/admin/types}" th:object="${type}" class="ui form">
            <!--分类名称-->
            <div class="field">
                <div class="ui left labeled input">
                    <label  class="ui teal basic label">分类名称</label>
                    <input type="text" name="name" placeholder="请输入分类" th:value="*{name}">
                </div>
            </div>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

报错:EL1007E: Property or field 'name' cannot be found on null 的相关文章

  • 使用默认文本填充 FILE 字段

    我正在尝试重新利用生成 FILE 字段的代码 以便在将某些内容添加到数据库时使用 并在编辑或详细查看相关项目时使数据库中已有的数据变灰 并禁用 但是 我似乎无法让文本填充该字段 我正在使用这个 echo
  • WordPress - 向 wp_posts 添加额外的列,然后发布到其中

    我试图在 添加帖子 或 添加页面 中添加一个额外的字段 我将该字段的值插入到数据库中 wp posts 表中添加的手动添加的列中 我知道我可以使用自定义字段模板 但问题是这些自定义字段将值插入 wp postmeta 而不是 wp post
  • jqGrid 中不区分大小写的搜索,包括隐藏字段

    我的 jqGrid 中有几个隐藏字段 我必须在这些字段上执行不区分大小写的搜索 可能正在使用正则表达式 不确定 是否可以 有人可以给我指示吗 Thanks 你应该插入搜索隐藏选项等于true在列定义中 colModel searchopti
  • Java Lombok:省略 @AllArgsConstructor 中的一个字段?

    如果我指定 AllArgsConstructor using Lombok 它将生成一个构造函数来设置所有声明的 非最终的 非静态的 字段 是否可以省略某些字段并为所有其他字段留下生成的构造函数 不 那是不可能的 有一个创建功能请求 Som
  • 有什么理由使用自动实现的属性而不是手动实现的属性?

    我理解属性相对于字段的优势 但我觉得使用自动实现的属性而不是手动实现的属性除了使代码看起来更简洁之外并没有真正提供任何优势 我感觉使用起来更舒服 private string postalCode public string PostalC
  • C# 中的“字段”和“属性”有什么区别? [复制]

    这个问题在这里已经有答案了 编辑 根据这些评论 你指的是 财产 还是 土地 公共字符串S1 与公共字符串 S2 得到 放 dana https stackoverflow com users 315689 dana 完全是布施 我的意思是一
  • 使用 JavaScript 获取所有输入对象的列表,无需访问表单对象

    我需要得到所有input对象并操纵onclick param 下面的工作是为了 a 链接 寻找这样的东西input tags for var ls document links numLinks ls length i 0 i a
  • 在 Java 中处理多个构造函数的最佳方法

    我一直想知道在 Java 中处理多个构造函数的最佳 即最干净 最安全 最有效 方法是什么 特别是当在一个或多个构造函数中未指定所有字段时 public class Book private String title private Stri
  • 将其他计费注册字段与 WooCommerce 中的默认 Wordpress 字段同步

    我已将以下代码添加到 Woocommerce 用户注册表中 以获取注册页面上的账单详细信息 现在当新用户注册时会发生什么 名字和姓氏将在账单详细信息数据库以及默认 WordPress 用户帐户中注册 如果用户更新其帐户 wordpress
  • 在 OpenCV 中绘制梯度向量场

    我想计算灰度图像的梯度 平滑平面在代码中 并将其绘制为 OpenCV 中的矢量场 叠加到现有图像上 我尝试应用一对 Sobel 运算符 我也尝试过 Scharr 来计算沿 x 和 y 的两个导数 如 OpenCV 文档中所述 但当我尝试绘图
  • Java继承中的隐藏字段

    在类中 与超类中的字段同名的字段会隐藏超类的字段 public class Test public static void main String args Father father new Son System out println
  • 将会话变量或自定义字段添加到 Elmah 错误日志表

    我想将我自己的会话变量添加到 elmah 错误日志表并显示它 我已经修改了源代码并将新字段添加到 Error cs 和其他字段中 但我不知道 但是当我将 HttpContext Current Session MyVar tostring
  • 为什么要使用字段而不是属性?

    我对 C 还很陌生 我认为属性是一件很棒的事情 事实上 这太棒了 以至于我看不出使用字段有任何真正的优势 即使对于私人领域 属性提供的灵活性和模块化似乎充其量可以让您避免严重的头痛 而最坏的情况则根本没有任何效果 我看到的字段的唯一优点是您
  • 将代码添加到 C# 属性获取/设置而不需要支持字段?

    您知道如何拥有自动生成支持字段的属性吗 就像我去的话 public String SomeProperty get set 我知道 如果我想向该属性添加代码 我必须创建支持字段 如下所示 public string someProperty
  • Sitecore + Lucene 搜索 FieldQuery 带空字符串

    我正在使用 FieldQuery 对象创建 Sitecore Ecommerce Search Query 然后 我使用 LuceneQueryBuilder 类将 Sitecore 查询转换为 Lucene Net Search Quer
  • 如何通过反射访问字段的值 (Scala 2.8)

    考虑以下代码 class Foo var name String bar 现在我尝试通过反射获取它的值和正确的类型 val foo new Foo val field foo getClass getDeclaredField name f
  • 仅检索 Java 类中声明的静态字段

    我有以下课程 public class Test public static int a 0 public int b 1 是否可以使用反射来仅获取静态字段的列表 我知道我可以获得所有字段的数组Test class getDeclaredF
  • 更新已编辑输入的值

    我在用react admin框架 我正在尝试动态更新我的输入值 在我的自定义组件中 我有onChange 方法如下所示 onChange value gt this setState currentForm this props recor
  • 类“属性”与“成员”与“变量”与“字段”的术语[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 似乎开发人员在引用存储在类实例中的数据时经常互换使用这些术语 每个术语之间是否存在技术差异 或者可以互换使用它们吗 根据不同的答案 类
  • 根据.Net中的字段反序列化json(C#)

    我正在编写一个应用程序 它可以获取Json像这样的对象列表 ObjectType apple ObjectSize 35 ObjectCost 4 ObjectTaste good ObjectColor golden ObjectType

随机推荐

  • @Transactional 事务加了 锁 为什么还有并发问题?

    一 原因分析 Spring 中通过在方法上添加注解 64 Transactional 可以很好的处理事务问题 Spring对此的处理原理是对 加了 64 Transactional 注解的方法 添加 AOP切面来时先事务管理的 而 sync
  • 聊聊微服务之什么是微服务及其好处

    一 什么是微服务 微服务就是一些协同工作的小而自治的服务 很小 xff0c 专注于做好一件事 在单一模块系统中 xff0c 随着新功能的增加 xff0c 代码库会越来越大 时间久了代码库会变得非常庞大 xff0c 以至于在什么地方修改都很困
  • RestTemplate 使用详解

    一 简介 常见的http客户端请求工具 xff1a JDK 自带 HttpURLConnectionApache HttpClientOKHttp 以上 工具虽然常用 xff0c 但对于 RESTful 操作相对不是太友好 所以 xff0c
  • BigDecimal 你使用对了吗

    背景 从事金融相关项目 xff0c 对BigDecimal应该是再熟悉不过了 xff0c 也有很多人因为不知道 不了解或使用不当导致资损事件发生 所以 xff0c 如果你从事金融相关项目 xff0c 或者你的项目中涉及到金额的计算 xff0
  • MySQL 中截取字符串的方法

    LEFT str len 从左边开始截取 xff0c 如果字符串为 null 则返回null str xff1a 被截取字符串 xff1b len xff1a 截取长度 span class token keyword SELECT spa
  • Redis 阻塞原因

    Redis 是典型的单线程架构 xff0c 所有的读写操作都是在一条主线程中完成的 当Redis用于高并发场景时 xff0c 这条线程就变的极其重要 如果它出现阻塞 xff0c 就会对应用带来致命的问题 当 Redis 出现阻塞时 xff0
  • 【pcl入门教程系列】之点云Concatenate

    简要说明 点云拼接 Concatenate 是指将点云进行累加在一起 xff0c 只是累加的方式不太一样 一种是点云的字段与维度完全一致 xff0c 数量可以不同 xff0c 两部分点云相加 xff0c 点云的数量增加了 另一种是点云的字段
  • python多线程

    单线程 from time import ctime sleep def music for i in range 2 print 34 I was listening to music s 34 ctime sleep 1 def mov
  • Nginx下配置Https证书详细过程

    一 Http与Https的区别 HTTP xff1a 是互联网上应用最为广泛的一种网络协议 xff0c 是一个客户端和服务器端请求和应答的标准 xff08 TCP xff09 xff0c 用于从WWW服务器传输超文本到本地浏览器的传输协议
  • SLAM学习记录:全局定位之gps说明

    这段时间因为各种事情耽误了 xff0c 好久没有进行更新了 xff0c 惭愧 xff01 前段时间在研究cartographer的定位建图模块 xff0c 在停更的时间主要再研究如何改善定位建图的效果 xff0c 也有一定的成效 xff0c
  • Windows操作系统名称与版本号汇总

    查看Windows系统版本号 xff1a 1 cmd xff1a winver 2 cmd xff1a systeminfo findstr Build 3 运行 xff1a dxdiag xff0c 可查看D3D版本 Windows操作系
  • 使用Onos+Ovs+Docker+Veth建立拓扑(2)

    使用Onos 43 Ovs 43 Docker 43 Veth建立拓扑 xff08 2 xff09 说明 首先在宿主机上安装一个带内核模块的ovs xff0c 然后在docker中安装一个不带内核的 这句话非常重要 可能存在的问题 Dock
  • 子网掩码 与同一网段

    子网掩码是必填的 子网掩码的作用 xff0c 通俗一点就是 就是用来分割子网和区分那些ip是同一个网段的 xff0c 那些不是同一网段的 以前以为ip地址的第三组数字就是网段 xff0c 其实大错特错了 其实同一网段指的是IP地址和子网掩码
  • 【人脸检测】OpenCV中的Haar+Adaboost级联分类器分解(一):Haar特征介绍

    最近由于工作原因 xff0c 需要研究OpenCV中的Adaboost级联分类器 我阅读了OpenCV中所有相关得代码 xff0c 包括检测和训练部分 xff0c 发现目前OpenCV中的Adaboost级联分类器代码有以下2个特点 xff
  • 认识 UML 类关系——依赖、关联、聚合、组合、泛化

    文章目录 1 依赖 xff08 Dependency xff09 2 关联 xff08 Association xff09 3 聚合 xff08 Aggregation xff09 4 组合 xff08 复合 xff0c Compositi
  • 常用开发软件及网站

    常用开发软件及网站 点击查看
  • 电商模式术语:ABC、B2B、B2C、C2C、B2M、M2C、B2A、C2A、O2O

    电商模式分类详解 一 ABC 英文单词 xff1a Agent xff08 代理商 xff09 Business xff08 商家 xff09 Consumer xff08 消费者 xff09 ABC 模式是新型电子商务模式的一种 xff0
  • TkMapper(通用mapper)

    TkMapper的配置及使用 TkMapper主要是做单标查询 xff0c 复杂的多表查询我们还得自己写sql 官方文档 xff1a 点击查看使用的是Springboot框架使用的数据库表ums permision xff1a idpidn
  • python两个 list 获取交集,并集,差集的方法

    1 获取两个list 的交集 方法一 a 61 2 3 4 5 b 61 2 5 8 tmp 61 val for val in a if val in b 列表推导式求的两个列表的交集 print tmp 2 5 方法二 print li
  • 报错:EL1007E: Property or field 'name' cannot be found on null

    SpringBoot集成thymeleaf做开发遇到的错误 Caused by org springframework expression spel SpelEvaluationException EL1007E Property or