记录一下Canal的错误,主要是top.javatool.canal.client.util下的StringConvertUtil引起的

项目场景:

提示:这里简述项目相关背景:
由于数据库的一个localdatetime字段是空的, 然后修改数据库数据同步canal的时候报了这个错误:
Caused by: java.lang.IllegalArgumentException: Can not set java.time.LocalDate field com.jsf.content.model.po.WorkOrder.completionDate to java.lang.String
at sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(UnsafeFieldAccessorImpl.java:167)
at sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(UnsafeFieldAccessorImpl.java:171)
at sun.reflect.UnsafeObjectFieldAccessorImpl.set(UnsafeObjectFieldAccessorImpl.java:81)
at java.lang.reflect.Field.set(Field.java:764)
at top.javatool.canal.client.util.FieldUtil.setFieldValue(FieldUtil.java:18)


原因分析:

提示:经过debug的排查,跟踪这边字段是在这边设置的。

在这里插入图片描述
debug接着跟踪,发现这边有个字段转换
在这里插入图片描述
我们进去发现并没有对LocalDateTime进行处理:
在这里插入图片描述

解决方案:

解决方案:
大家应该都知道类加载器的加载顺序,双亲委派。那么我们只要创建一个同包同名的类。然后把原来的类复制过来,自己修改扩展就行了,如下:

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/341882.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

在 WinForms 应用中使用 FtpWebRequest 进行文件操作和数据显示

在 WinForms 应用中使用 FtpWebRequest 进行文件操作和数据显示 引言 在企业级应用或桌面程序中,经常需要从远程服务器获取数据,并在用户界面上展示这些数据。本文将通过一个实际案例,演示如何在 Windows Forms 应用程序中使用 FtpWebReques…

一个小巧、快速、轻量级的 .NET NoSQL 嵌入式数据库

前言 今天给大家分享一个小巧、快速、轻量级的 .NET NoSQL 嵌入式数据库:LiteDB。本篇文章主要是介绍LiteDB和在.NET中如何使用。 LiteDB介绍 LiteDB 是一个小巧、快速和轻量级的 .NET NoSQL 嵌入式数据库。 无服务器的 NoSQL 文档存储 简单的 API,类似…

MySQL篇—通过Clone插件进行远程克隆数据(第三篇,总共三篇)

在介绍 Clone 最终篇之前,我们先简要回顾一下前面所讲的内容。在第一篇中,我们探讨了 Clone 的用途、使用的前提条件、存在的限制,以及它的备份原理。Clone 是一种用于复制和备份数据的工具,它能够快速高效地创建数据的精确副本。…

Vue3简介以及项目创建

vue是什么? (同音view)是一款用于构建用户界面的 JavaScript 框架。它基于标准 HTML、CSS 和 JavaScript 构建,并提供了一套声明式的、组件化的编程模型,帮助你高效地开发用户界面。 知识储备(具有以下的基本知识) HTML CSS …

pgzrun 生命游戏制作过程详解

背景资料 康威生命游戏(Game of Life)是剑桥大学约翰何顿康威设计的计算机程序。 美国趣味数学大师马丁加德纳(Martin Gardner,1914-2010)通过《科学美国人》杂志,将康威的生命游戏介绍给学术界之外的广大渎者,一…

分享一款刚开源的音乐人声分离工具!无需联网!页面化操作!

前言 人声分离 是一项重要的音频处理技术,它可以将混合音频中的 人声和背景音乐 分离出来,为音频处理和后期制作提供了便利。 随着人声分离技术的发展,越来越多的开源工具被开发出来,为音频处理领域带来了新的发展机遇。小编之前…

Netty开篇——基础介绍与准备(一)

I/O篇 Netty的介绍 Netty 是由JBOSS提供的一个Java开源框架在Github上Netty 是一个异步的、基于事件驱动的网络应用框架,用以快速开发高性能、高可靠性的网络IO程序。Netty 主要针对在TCP协议下面向客户端的高并发应用,或者Peer-to-Peer/P2P场景下的大量…

PPT插件-大珩助手-修改素材名称及搜索功能演示

修改素材名称及搜索功能演示 大珩助手的素材库,支持修改素材的名称,支持动态查找素材,删除素材 移动素材到其他分类 软件介绍 PPT大珩助手是一款全新设计的Office PPT插件,它是一款功能强大且实用的PPT辅助工具,支持…

天津大数据分析培训班 常见的大数据培训课程

大数据现在属于热门职业技能之一,不管是大学毕业生,计算机和数据相关专业青年,已经工作一阵的开发人员,运营小白,还是其他想进入这个行当的,可能还没有编程基础的转行人,都想尝试大数据行业&…

“三指针法“合并两个有序数组(力扣每日一练)

我的第一想法确实是:先合并数组,再排序,搞完。 哈哈哈,想那么多干嘛,目的达成了就好了。 力扣官方题解是双指针: 还有糕手: Python: def merge(nums1, m, nums2, n):# 两个指针分别…

深入理解 Flink(六)Flink Job 提交和 Flink Graph 详解

Flink Program 编程套路回顾 1、获取执行环境对象 StreamExecutionEnvironment env StreamExecutionEnvironment.getExecutionEnvironment(); 2、通过执行环境对象,注册数据源 Source,得到数据抽象 DataStream ds env.socketTextStream(...) 3、调用数…

PostgreSQL内存浅析

体系结构 (https://www.postgresql.fastware.com/blog/lets-get-back-to-basics-postgresql-memory-components) (http://geekdaxue.co/read/fcantsql/qts5is) 共享内存 linux的共享内存实现 (https://momjian.us/main/writings/pgsql/insi…