
【错误解决】
文章平均质量分 57
记录日常工作中遇见的一些bug问题。
Mr.小朱同学
Java 开发工程师,从事 Web 应用程序的研发,擅长 Spring、SpringBoot 等技术。
热爱编程,业余时间学习新知识,通过 优快云 记录学习心得和笔记内容。
展开
-
SpringBoot引入jakarta.mail发送邮件报错:502 Invalid input from xxx to newxmesmtplogicsvrszc13-0.qq.com.
最近在做一个项目时候,需要做一个发送邮箱验证码的功能,于是引入了jakarta.mail依赖来实现发送邮件的功能,在这个过程中,遇到了三个报错问题,这里记录一下,方便大家查看解决。原创 2024-12-27 20:03:25 · 2178 阅读 · 0 评论 -
SpringMVC部署后访问出现404,控制台报错:StandardContext.loadOnStartup web应用程序[]中的Servlet[springMVC]引发了load()异常
出现上面问题的根本原因是:SpringMVC程序是部署到Tomcat容器里面的,在IDEA中部署war的时候,需要将spring-webmvc相关的依赖一起引入工程里面,否则打包的时候,是不会将spring-webmvc相关的jar包部署到Tomcat里面的。我一想,难道是没有依赖没有引入吗,查看pom.xml文件也没问题,是有引入spring-webmvc这个依赖的。想着难道是哪里配置错了吗,检查了一下各个配置项,发现没问题,怎么就一直404呢?但是,在浏览器访问某个接口的时候,这个时候一直提示404,原创 2024-12-12 20:55:43 · 760 阅读 · 0 评论 -
引入redis启动报错:ClassNotFoundException: org.springframework.data.redis.serializer.RedisSerializer
上面报错是说,找不到org.springframework.data.redis.serializer.RedisSerializer这个类,这个是spring-boot-starter-data-redis依赖中提供的类,但是我明明已经引入了依赖呀,怎么还是提示这个问题,重新检查了一下工程依赖,配置信息等,发现都应该是正确的。出现上面这个问题的原因是:聚合工程模式下,当IDEA引入新的依赖之后,必须重新执行clean、install命令,确保本地仓库中的jar包是最新的,就这样,我这个问题就解决了。原创 2024-11-21 20:22:31 · 305 阅读 · 0 评论 -
vue3项目中使用element-plus组件出现警告信息:Runtime directive used on component with non-element root node.
出现上面警告信息的原因是:我使用了el-skeleton自定义了一个skeleton-text组件,然后将这个组件使用到了el-tooltip组件里面,就导致这个报错了。警告提示信息是说,缺少了root根元素,那么我们就可以自己使用div当做根元素,这样就可以解决这个警告问题了。到此,xxx问题就解决啦。原创 2024-11-17 11:52:32 · 1264 阅读 · 0 评论 -
Jasper Studio中使用Image组件,当图片地址为空的时候,解决预览报错问题:engine.JRException: Byte data not found at: .
Jasper Studio中使用Image组件,当图片地址为空的时候,预览报错engine.JRException: Byte data not found at: .原创 2024-09-27 22:09:58 · 345 阅读 · 0 评论 -
使用WorkBench导入数据报错:Open Dump Folder The selected folder doesn‘t appear to be valid.Multiple definitio
WorkBench导入数据报错:Open Dump Folder The selected folder doesn't appear to be valid.Multiple definitio的问题就解决啦。出现上面报错的根本原因是:导入的数据库里面,存在以【xxx0.sql】格式的备份文件,需要将其删除才能够加载成功。将导入的数据库目录下的。原创 2024-09-10 14:31:10 · 520 阅读 · 0 评论 -
SpringBoot图片上传报错:提示Illegal base64 character 3a 和 Illegal base64 character 2c无效字符问题
SpringBoot图片上传报错:提示Illegal base64 character 3a 和 Illegal base64 character 2c无效字符问题。Illegal base64 character 3a,无效的base64字符3a,3a是十六进制,对应的字符是冒号(:)。Illegal base64 character 2c,无效的base64字符2c,2c是十六进制,对应的字符是逗号(,)。原创 2024-08-24 20:17:11 · 408 阅读 · 1 评论 -
解决Jasper Studio报表工具中预览正常显示,但部署到服务器上面无法正常显示的问题
之前有遇到过一个Jasper Studio报表开发相关的问题,这里记录一下,方便其他小伙伴可以快速解决问题。出现上面问题的原因:Jasper Studio报表工具中,使用了服务器上面不存在的字体,所以导致无法渲染出内容。到此,解决Jasper Studio报表工具中预览正常显示,但是部署到服务器上面缺无法正常显示的问题就解决啦。解决方案是:修改字体为服务器上面存在的,我是修改成了微软雅黑字体。原创 2024-08-23 20:36:53 · 633 阅读 · 0 评论 -
解决Jasper Studio预览无数据源的问题:在Dataset and Query里面预览数据为空,但是浏览器访问接口,是存在数据的。
要解决预览无数据的问题,需要选择【Use the report JSON expression when filling the report】选项,才可以预览出数据。到此,Jasper Studio预览无数据源的问题就解决啦。搞了好久,最终找到了问题,解决方案如下。再次预览数据,就可以正常了。原创 2024-08-23 11:07:24 · 579 阅读 · 0 评论 -
JasperStudio预览报错:JRValidationException: Band height validation for subreport “XXX“ failed in the cur
JasperStudio预览报错:JRValidationException: Band height validation for subreport "XXX" failed in the current page context (height = 842, top margin = 25, bottom margin = 25)原创 2024-08-13 17:56:43 · 252 阅读 · 0 评论 -
Jasper studio报表工具中,如何判断subDataSource()子报表数据源是否为空
今天在处理一个有关Jasper Studio报表模板制作的线上问题,需要根据某个报表子数据源是否为空,来决定对应的组件是否显示,找了好久的资料都没有实现,最后找到一种解决办法。就是通过自定义变量,然后变量的取值是来自子报表数据源,判断子报表数据源是否为空即可,具体的解决方案,查看下面详细内容。到此,Jasper studio报表工具中,如何判断subDataSource()子报表数据源是否为空的问题就解决啦。原创 2024-07-01 19:12:20 · 441 阅读 · 0 评论 -
Jasper Studio制作报表,预览时候出现死循环,一直渲染页面,total pages无限渲染
最近遇到一个jasper报表线上预览出现死循环的问题,实施人员反馈,线上生产环境中,使用某个功能显示pdf的时候,出现了接口超时问题,在这个项目中,我们使用的是JasperReports报表来生成PDF的,所以需要根据jasper模板进行渲染。因为jasper报表渲染卡死,处于死循环的状态,一直在无限渲染page页面,从而导致程序无法执行下去,超过30s之后,前端界面就提示接口超时了。到此,Jasper Studio制作报表,预览时候出现死循环,一直渲染页面,total pages无限渲染的问题就解决啦。原创 2024-06-18 15:14:23 · 500 阅读 · 0 评论 -
JDBC通过ParameterMetadata获取参数元数据信息,报错:Parameter metadata not available for the given statement
JDBC通过ParameterMetadata获取参数元数据信息,报错:Parameter metadata not available for the given statement的问题就解决啦。在数据库链接地址url里面,添加generateSimpleParameterMetadata=true的参数信息。大概的意思是:参数元数据信息对于被给的语句不可用。原创 2024-06-17 16:42:01 · 257 阅读 · 0 评论 -
JasperReports渲染报表时候,报错:Error loading object from InputStream.invalid stream header: 3C3F786D
我想了下可能出现这个问题的原因,因为我在Jasper Studio报表工具里面是可以正常预览的,所以这就让我感到奇怪了。于是,我就是使用排除法,先渲染一部分,看看是否可以正常,先将子报表去掉,只渲染最基础的文本信息,去掉子报表之后重新预览,是可以正常显示的。通过这个步骤,也就可以知道,报错是因为子报表这块内容有问题,而其还是流读取失败,既然要读取流,那一定是读取报表文件导致,于是我就看了下Subreport子报表的文件路径,果然,子报表写的文件路径是错误的。大致意思是:加载流对象失败。原创 2024-06-12 14:02:09 · 1408 阅读 · 0 评论 -
Jasper Studio报表工具预览报错:Error evaluating expression for source text: ((net.sf.jasperreports.engine.dat
最开始我配置的子报表路径是【"/report/yyyy/xxxx.jasper"】,这个路径是不正确的,路径不能使用斜杆【/】开头,使用斜杆就表示绝对路径了,应该修改成【"report/yyyy/xxxx.jasper"】,即:采用相对路径格式。上面从报错,大致意思是说:解析表达式的时候出错了,我找了一圈也没发现哪个组件有问题,于是我就一个一个的尝试,最后发现了问题。原创 2024-06-06 21:14:57 · 983 阅读 · 0 评论 -
SpringBoot聚合工程下,引入动态数据源之后,访问接口报错:Invalid bound statement (not found):xxxxxMapper.selectList
今天创建了一个SpringBoot聚合工程,接着实现了自定义动态数据源相关的代码,工程是正常启动的,但是访问接口去查询数据库的时候,就报错了:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.dev.toolkit.repository.EntityPropertyConfigMapper.selectList。上面报错信息,就是说:MyBatis没有找到绑定的SQL语句。原创 2024-05-24 17:21:29 · 402 阅读 · 0 评论 -
DruidDataSource调用init()初始化数据源之后,链接地址不可用的时候,会循环打印报错日志:create connection SQLException, url: xxxxxx, er
今天在搞SpringBoot动态数据源的时候,有使用到DruidDataSource.init()方法初始化数据源,测试之后,发现如果url地址不正确的时候,控制台会一直输出连接失败的日志信息,报错日志如下所示:,出现上面报错原因是Druid在连接数据库失败之后,会尝试重新连接,所以导致报错日志一直打印。到此,DruidDataSource调用init()方法之后,一直报错的问题就解决啦。原创 2024-05-23 14:29:08 · 597 阅读 · 0 评论 -
SpringBoot程序报错事务回滚异常:Transaction rolled back because it has been marked as rollback-only
今天在测试环境中,测试一个功能的时候,发现了一个报错问题:Transaction rolled back because it has been marked as rollback-only,大致意思是事务已经回滚,因为它已经被标记为仅回滚。到此,Transaction rolled back because it has been marked as rollback-only的报错问题就解决啦。使用上面注解标记内层方法之后,再次启动运行,就可以正常运行啦。原创 2024-05-21 11:30:26 · 2332 阅读 · 0 评论 -
使用PageHelper分页插件,发现获取到的total总记录数量不对,无法获取到正确的total数量
上面的几种情况都不是我遇见的,我又仔细想了下,突然看到我代码里面通过mapper查询出来的List结果集,和我返回给前端的List结果集是两个不同的,按照PageHelper分页的原理,它缓存的是第一次SQL查询的结果集,而如果后面对第一次查出的结果集有二次处理,那么PageHelper就无法获取到实际的total数量。原创 2024-05-14 09:04:25 · 2762 阅读 · 0 评论 -
SpringBoot工程引入spring-boot-admin监控工具,启动报错:NoClassDefFoundError: reactor/core/publisher/Sinks$EmitResu
最近看到了一个监控相关的依赖,就想着引入试一下看看效果,这个监控工具是:spring-boot-admin,需要引入spring-boot-admin-starter-server依赖。从Caused by: java.lang.NoClassDefFoundError: reactor/core/publisher/Sinks$EmitResult报错信息来看,是缺少了reactor/core相关的类。到此,SpringBoot工程引入spring-boot-admin监控工具报错的问题就解决啦。原创 2024-05-10 19:10:33 · 277 阅读 · 1 评论 -
使用com.google.common.collect依赖包中的Lists.transform()方法转换集合对象之后,修改集合中的对象属性,发现不生效
从上面就可以看出来啦,当我们使用Lists.transform()方法转换得到的集合对象,如果没有对其数据进行修改操作,只是遍历集合,那么返回的数据就是相同的,但是,如果有对其进行修改操作,那么此时Lists.transform()方法会创建一个新的对象,修改也只是这个新的对象的数据,不会影响转换的集合数据,可以理解为:修改的数据只是一个临时对象,并不是原对象。针对上面的情况,解决方案当然是,直接通过new的方式,创建一个新的集合,然后对这个新的集合数据进行修改。原创 2024-05-10 16:17:41 · 2160 阅读 · 0 评论 -
操作Redis数据,报错:WRONGTYPE Operation against a key holding the wrong kind of value,类名:LettuceExceptionCo
我这个报错是因为在使用redis保存List集合类型数据的时候,不小心使用的是redisTemplate.opsForValue().set(key, value, timeout, timeUnit);方法,从而导致上面的类型错误。上面报错意思是:对于对应的key使用了错误的操作方式。最后排查发现,我保存数据的时候,是采用redis中的list数据类型,但是通过redis获取的时候,使用的确是string类型,所以这就导致了上面这个报错。原创 2024-04-21 15:12:08 · 323 阅读 · 0 评论 -
JSON转换Bean对象报错:net.sf.json.JSONException:Unknown property ‘xxx‘ on class ‘class java.lang.Object‘
从上面的报错日志中,大概可以知道,这是在将接口返回的JSON字符串转换成Bean对象的时候,接口返回了Bean对象中不存在的字段属性,从而导致在转换过程中报错。如上图所示,当返回的对象中包含了一个子对象,这个时候使用net.sf.json去转换的时候,就会报错:找不到对应的属性字段。我的项目工程中引入了【net.sf.json-lib】这个依赖,并且代码中是使用这个来处理JSON相关数据(这里的JSON字符串和前面的区别在于:这个JSON字符串中data对象中,多了一个extra对象属性。原创 2024-04-13 13:53:18 · 842 阅读 · 0 评论 -
SpringBoot工程在IDEA中使用package打包报错:java.lang.TypeNotPresentException: Type RepackageMojo not present
Caused by: java.lang.UnsupportedClassVersionError: org/springframework/boot/maven/RepackageMojo has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions u原创 2024-03-22 23:00:53 · 303 阅读 · 0 评论 -
JasperStudio中TextField文本框组件渲染之后,出现行间距不一致的问题
最近在处理线上遇到的一个问题,是有关JasperReports报表相关的问题,问题背景大概是这样的:我们的项目中使用了JasperReports来渲染报表,其中使用到了Text Field文本框组件,但是问题是渲染出来的数据直接会出现一些间距不一致的空白区域,效果如下所示:原创 2024-03-05 22:07:13 · 862 阅读 · 0 评论 -
SpringBoot添加Swagger2启动报错:java.lang.NoClassDefFoundError: com/fasterxml/jackson/annotation/JsonKey
SpringBoot工程添加Swagger2依赖,启动报错:Caused by: java.lang.NoClassDefFoundError: com/fasterxml/jackson/databind/ObjectMapper、java.lang.NoClassDefFoundError: com/fasterxml/jackson/annotation/JsonKey。原创 2024-03-05 21:39:52 · 457 阅读 · 0 评论 -
Gitlab中CICD提交代码后,运行报错:Preparation failed: Cannot connect to the Docker daemon
从报错日志上来看,可以发现是不能连接Dcoker daemon进程所导致的,并且它还提示docker daemon进程是否正在运行?从这的报错大概就可以知道问题的原因是:docker中的daemon守护进程没有启动。执行成功之后,这个问题最终就解决了。原创 2024-02-19 20:20:13 · 975 阅读 · 0 评论 -
JasperReports渲染报表文件时候,读取图片报错:Byte data not found at:xxx.png.\r\n\tat
最近在工作中,使用JasperReports报表比较多一些,有次线上环境里面运行报错,查看报错日志,如下所示:从报错日志里面,可以大概看出是在调用fillReport()方法,填充报表数据的时候,读取不到xxx.png图片所导致的报错。于是我就是使用Jasper Studio报表工具打开jasper模板文件,然后查看里面是否有使用Image图片组件的地方,果然是有使用Image图片组件。一开始我以为是图片名称使用了中文所导致的,于是我就先修改图片名称为英文字母,将重新编译之后的jasper模板文件发到服原创 2024-01-27 16:06:12 · 1296 阅读 · 0 评论 -
【MD5加密结果不一致问题】同一个文本字符串,使用MD5加密之后,得出的加密结果居然不相同
今天工作中,遇到一个奇怪的问题,我负责对接第三方的短信发送接口,接口中有一个入参是sign加签字段,根据短信内容进行MD5加密之后得到,于是我就是使用JDK自带的MD5加密算法,写了一个加密方法,代码如下:原创 2023-08-24 20:48:11 · 7348 阅读 · 1 评论 -
maven install打包报错There are test failures.\target\surefire-reports for the individual test results.
maven install打包报错There are test failures.\target\surefire-reports for the individual test results.原创 2023-08-22 21:44:32 · 1559 阅读 · 0 评论 -
Java使用replaceAll()、split()方法,对\r\n字符串换行处理遇见的问题
这周在工作中,遇见了一个需求,大致需求功能是:在配置表中维护一个连接符,这里配置的是【\r\n】换行符,前端获取数据显示的时候,使用配置表中的【\r\n】换行符进行拼接显示,看着是和简单的需求,做完之后,我将拼接好的字符串返回给前端,奇怪的事情发生了,前端没有换行显示,而是将【\r\n】内容原样显示出来了。一顿操作之后,发现不生效?普通的\r\n没有被替换成换行符,沃特,没想明白为啥,百度了一圈,后面至于找到原因了,解决方案如下。到此,对于replaceAll()方法处理【\r\n】换行符的问题解决啦。原创 2023-06-06 21:21:27 · 2875 阅读 · 0 评论 -
搭建SpringCloud Gateway环境启动报错:GatewayAutoConfiguration$NettyConfiguration.buildConnectionProvider
在搭建SpringCloud Gateway网关环境的时候,引入了【SpringBoot 2.3.0.RELEASE】和【SpringCloud Hoxton.SR12】版本,启动工程时候,报错找不到依赖。出现上面问题的原因是SpringBoot和SpringCloud的版本不匹配导致的,解决办法是将修改版本号,我是将【SpringBoot 2.3.0.RELEASE】版本修改成了【SpringBoot 2.3.12.RELEASE】,重新启动工程,此时可以正常启动。原创 2023-04-19 15:17:35 · 1159 阅读 · 0 评论 -
微服务调用时候,报错:nested exception is feign.RetryableException: Read timed out executing GET http://hystrix
从日志上面来看,核心的内容是:Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is feign.R。默认情况下,ribbon的连接时间和读取超时时间是【1000】毫秒,显然是接口调用时候超过1000毫秒了,问题找到了,那要如何解决呢?通过设置ribbon的连接超时时间和读取超时时间即可。原创 2023-02-06 21:12:52 · 1278 阅读 · 0 评论 -
WebService接口调用报错:Unable to create schema compiler,com.sun.tools.internal.xjc.api.XJC
根本原因是项目应用里面缺少tools.jar包,而tools.jar是jdk中提供的一个jar包,我本地电脑配置的环境是jdk的,所以可以正常运行,而服务器上面可能是jre环境,jre里面是没有tools.jar的,所以导致程序报错。这次报错的根本原因就是项目中缺少jdk中的tools.jar包,解决办法就是想一个办法引入tools.jar包,但是需要注意的是,如果我们直接将tools.jar包放入打包之后的工程里面,此时仍然会报错,因为这种方式不生效。到此,这个问题解决啦。原创 2022-11-12 15:26:50 · 2227 阅读 · 0 评论 -
多次负载均衡之后,WebService接口调用地址,和实际调用的接口地址不一致问题记录
这篇文章记录一下,多次负载均衡之后,WebService接口调用地址,和实际调用的接口地址不一致问题记录。原创 2022-10-20 23:52:47 · 3369 阅读 · 7 评论 -
实现springboot项目实现热部署(eclipse)
当修改了SpringBoot工程的代码后,每一次都需要重启项目,才能够让代码生效,这样每次停止、启动工程,太浪费时间了。所以,为了避免时间都浪费在重启项目之上,可以采用热部署的形式,让项目代码实时的编译部署。下面是具体步骤:(1)pom文件引入依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools<原创 2021-08-12 21:50:21 · 995 阅读 · 3 评论 -
springboot项目结构介绍
创建springboot项目之后,在eclipse中导入,就会生成相应的springboot项目结构目录。下面我以一个demo项目为案例。(1) 导入springboot项目导入项目之前,先上https://start.spring.io创建一个demo项目。导入demo项目到eclipse中,等待maven依赖下载完成,如下图所示:上面就是springboot项目导入完成...原创 2019-08-16 09:20:02 · 1166 阅读 · 0 评论 -
SpringBoot整合swagger报错java.lang.NoClassDefFoundError: javax/validation/constraints/Min
(1)错误信息在搭建SpringBoot整合swagger项目时候,启动项目,报错: . ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / /原创 2021-07-19 20:15:03 · 3797 阅读 · 0 评论 -
如何创建一个SpringBoot项目???
springboot项目的创建和spring项目的创建不同,不是直接在eclipse中选择maven项目创建的,而是通过它的官网创建项目。(1)第一步:访问官网打开浏览器,访问:https://start.spring.io出现如下界面:(2)第二步:填写项目信息以及相关依赖相应的以来可以在创建时添加,也可以创建完成之后,用到哪个依赖就添加对应的依赖。内容...原创 2019-08-15 15:00:22 · 259 阅读 · 0 评论 -
SpringBoot启动第一个项目
如何使用springboot启动第一个项目,并且访问index.html页面,显示【欢迎使用SpringBoot】。还是以之前的demo项目为案例。(1) 在【src/main/resources/static】目录下,添加一个index.html页面。(2) 启动springboot项目。启动DemoApplication.java类,即可启动springboot项目。...原创 2019-08-17 11:06:41 · 503 阅读 · 0 评论