php小编百草在使用spring sseemitter发送dto对象时,可能会遇到java.lang.illegalargumentexception: no合适的转换器类错误。这个错误通常发生在没有正确配置转换器的情况下,导致无法将dto对象转换为正确的数据格式。解决这个问题的方法是检查配置文件中是否正确配置了转换器类,并确保转换器类能够正确地将dto对象转换为相应的数据格式。
在我们的 spring-boot 应用程序中,我们有以下简单的 ssestatusdto dto:
@builder
@allargsconstructor
@noargsconstructor
public class ssestatusdto {
private string currentphase;
private int percentage;
private string result;
}出于某种我无法理解的原因,spring 在尝试将信息发送回客户端时无法将此 dto 转换为 json:
emitter.send(SseEmitter.event()
.data(SseStatusDto.builder()
.currentPhase("DONE")
.percentage(100)
.result("temp-result")
.build()), MediaType.APPLICATION_JSON);我收到 java.lang.illegalargumentexception:没有适合类 <class> 的转换器
我错过了什么?
立即学习“Java免费学习笔记(深入)”;
尝试为 ssestatusdto 模型添加 getter 和 setter:
@Builder
@AllArgsConstructor
@NoArgsConstructo
@Getter
@Setter
public class SseStatusDto {
private String currentPhase;
private int percentage;
private String result;
}这应该可以解决您的问题。
以上就是Spring SseEmitter 发送 DTO 对象时抛出 java.lang.IllegalArgumentException: No合适的转换器类错误的详细内容,更多请关注php中文网其它相关文章!
java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号