IO error while reading input message; nested exception is java.io.IOException: Stream closed

IO error while reading input message; nested exception is java.io.IOException: Stream closed,第1张

I/O error while reading input message; nested exception is java.io.IOException: Stream closed

SpringMVC控制层接收前端多个参数
报错I/O error while reading input message; nested exception is java.io.IOException: Stream closed
【Controller】

	@PostMapping("/list")
    public Result> list(@RequestBody ReviseInfo reviseInfo, @RequestBody ReviseRequest reviseRequest){
        return reviseAdaptor.list(reviseInfo, reviseRequest);
    }

【ReviseInfo】

@Data
public class ReviseInfo {
    
    @MongoId
    private String id;
    
    private String subjectId;
    
    private String versionId;
    
    private String fragOri;
    
    private String fragFixed;
    
    private Integer type;
}

【ReviseRequest】

@Data
public class ReviseRequest {
	
    private List data;
}

传参

{
	// 当前稿件ID
    "subjectId": "5f4b7a6cc04e43398921421aef8b77a2", 
    // 纠错内容列表
    "data": [
        {
            "content": "宁厦的好时机历案打算沈查"
        }
    ]
}

报错I/O error while reading input message; nested exception is java.io.IOException: Stream closed
解决方案
1、创建新的数据传输对象,如ReviseDTO,将需要的参数合并放入一个DTO
【ReviseDTO】

@Data
public class ReviseDTO {
	
    private String subjectId;
	
    private List data;
}

【Controller】

	@PostMapping("/list")
    public Result> list(@RequestBody ReviseDTO reviseDTO){
        return reviseAdaptor.list(reviseDTO);
    }

2、使用Map接收多个参数
【Controller】

	@PostMapping("/list")
    public Result> list(@RequestBody Map params){
        return reviseAdaptor.list(params);
    }

【Adaptor/serviceImpl】

import org.apache.commons.collections4.MapUtils;

	String subjectId = MapUtils.getString(params, "subjectId");
	List data = (List)MapUtils.getObject(params, "data");
	// List data = (List)params.get("data");

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5523446.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-13
下一篇 2022-12-13

发表评论

登录后才能评论

评论列表(0条)

保存