-
Notifications
You must be signed in to change notification settings - Fork 7.7k
Closed
Labels
Description
在
#1663
该issues基础上进行测试
对BUG进行修改,修改两个模型为以下模型:
@Data
class SmsRes {
/**
* 状态码.
*/
private String code;
/**
* 消息.
*/
private Message message;
}
@Data
class Message {
/**
* 消息项.
*/
private List<MessageItem> item = new ArrayList<>();
}
@Data
class MessageItem {
/**
* 手机号.
*/
private String desmobile;
/**
* 消息id.
*/
private String msgid;
}
使用相同测试用例
1、String xmlStr = "<?xml version=\"1.0\" encoding=\"gbk\" ?><response><code>02</code></response>"; 测试通过
2、String xmlStr = "<?xml version=\"1.0\" encoding=\"gbk\" ?><response><code>02</code><message></message></response>"; 异常
异常栈:
Exception in thread "main" cn.hutool.core.convert.ConvertException: Unsupported source type: class java.lang.String
at cn.hutool.core.convert.impl.BeanConverter.convertInternal(BeanConverter.java:84)
at cn.hutool.core.convert.AbstractConverter.convert(AbstractConverter.java:58)
at cn.hutool.core.convert.ConverterRegistry.convert(ConverterRegistry.java:228)
at cn.hutool.core.convert.ConverterRegistry.convert(ConverterRegistry.java:247)
at cn.hutool.core.convert.Convert.convertWithCheck(Convert.java:753)
at cn.hutool.core.bean.copier.CopyOptions.lambda$new$0(CopyOptions.java:92)
at cn.hutool.core.bean.copier.CopyOptions.convertField(CopyOptions.java:349)
at cn.hutool.core.bean.copier.MapToBeanCopier.lambda$copy$0(MapToBeanCopier.java:91)
at java.util.HashMap.forEach(HashMap.java:1289)
at cn.hutool.core.bean.copier.MapToBeanCopier.copy(MapToBeanCopier.java:60)
at cn.hutool.core.bean.copier.BeanCopier.copy(BeanCopier.java:92)
at cn.hutool.core.bean.BeanUtil.copyProperties(BeanUtil.java:771)
at cn.hutool.core.bean.BeanUtil.toBean(BeanUtil.java:567)
at cn.hutool.core.bean.BeanUtil.toBean(BeanUtil.java:549)
at cn.hutool.core.bean.BeanUtil.toBean(BeanUtil.java:505)
at cn.hutool.core.util.XmlUtil.xmlToBean(XmlUtil.java:991)
使用5.8.19版本
Originally posted by @Rain-Chen in #1663 (comment)