thymeleaf使用th:onclick传递参数报错

thymeleaf点击事件th:onclick传递th:each循环遍历的对象作为参数报错

问题背景

<li th:each="car:${cars}" th:onclick="parkCar([[${lot}]],this)">

之前编写了以上代码,未进行以下操作时,代码尚可用,直到今天发现代码报错了(内容如下)
com.fasterxml.jackson.databind.exc.InvalidDefinitionException: No serializer found for class org.apache.ibatis.executor.loader.javassist.JavassistProxyFactory$EnhancedResultObjectProxyImpl and no properties discovered to create BeanSerializer (to avoid exception, disable SerializationFeature.FAIL_ON_EMPTY_BEANS) (through reference chain: com.example.springboot.entity.car.ParkingLot_$$_jvst14b_1["handler"])

过程

刚开始没有仔细查看报错内容,一直纠结为什么之前能用的代码现在却出错了,于是埋头搜索一堆关于onclick点击事件如何传入ModelAndView数据的方法,这里记录两种传参方式:

th:οnclick="函数名([[${变量名}]])

只能传数值或字符串,不能传对象

th:οnclick="|函数名('${变量名或表达式}')|"

${}的内容只能是数值布尔值,不能是其他类型的数据

解决方案

最终在一篇博文上找到简单、有效的方法:
在实体类上注解:

@JsonIgnoreProperties(value={“hibernateLazyInitializer”,”handler”,”operations”,”roles”,”menus”})

参考博文https://www.iteye.com/blog/zzc1684-2186363

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值