Feign远程调用,传参为LocalDateTime类型报错问题
可以把get请求改成post请求(其实本地服务没有问题,但是部署到服务器上就出现了这个问题)
好像没有没有解决实际问题。
参考:
后续
— — — — — — — —
后面又报错了,还是那个类型转换异常的问题。
报错信息:
[500 ] during [POST] to [http://xyfintec-etsp-order/orderInfo/check/suitable/student?courseId=1568059030997725186&startTime=22-9-9 下午1:30] [RemoteOrderInfoService#checkSuitableStudent(List,String,LocalDateTime)]: [{"code":500,"msg":"Failed to convert value of type 'java.lang.String' to required type 'java.time.LocalDateTime'; nested exception is org.springframework.core.convert.ConversionFailedException: Failed... (480 bytes)]
其实大概信息也能明白,就是说startTime=22-9-9 下午1:30,在服务调用的时候被encode了,导致后面其他服务接收的时候,转LocalDateTime,转换异常。
解决办法:
1、在feign远程调用的时候,先将localDateTime格式化成字符串,然后传输;
2、等到达目标服务之后,在将其转换成LocalDateTime类型。
feign接口:
-
-
public interface RemoteOrderInfoService {
-
-
-
/**
-
* 远程调用-校验满足上课条件的学生
-
* @param studentInfos
-
* @param courseId
-
* @param startTime
-
* @return
-
*/
-
-
WebReturnResultModel<List<RemoteStudentInfoDTO>> checkSuitableStudent( List<RemoteStudentInfoDTO> studentInfos,
-
String courseId,
-
String startTime);
-
...
-
}
远程服务接口:
-
/**
-
* 远程调用-校验满足上课条件的学生
-
*/
-
-
public WebReturnResultModel<List<RemoteStudentInfoDTO>> checkSuitableStudent( List<RemoteStudentInfoDTO> studentInfos,
-
String courseId,
-
String startTime) {
-
...
-
}
实际调用:
实际调用时转成字符串
-
// Feign在远程调用是,使用LocalDate需要转换成字符串
-
String startTime = LocalDateTimeUtil.format(courseInfo.getStartTime(), DateTimeFormatter.ofPattern(DatePattern.NORM_DATETIME_PATTERN));
到达目标后:
到达目标后再将其转换成LocalDateTime
-
// Feign在远程调用是,使用LocalDate需要转换成字符串
-
LocalDateTime parseStartTime = LocalDateTimeUtil.parse(startTime, DateTimeFormatter.ofPattern(DatePattern.NORM_DATETIME_PATTERN));
补充:这里用到了hutool的工具类(感觉还不错)
依赖:
-
<!-- https://mvnrepository.com/artifact/cn.hutool/hutool-all -->
-
<dependency>
-
<groupId>cn.hutool</groupId>
-
<artifactId>hutool-all</artifactId>
-
<version>5.8.5</version>
-
</dependency>
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgjjjci
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
怎样阻止微信小程序自动打开
PHP中文网 06-13