java - 为什么 Jaxb Unmarshalling 因错误意外元素而失败。预期元素是(无)
问题描述
嗨,我正在使用以下代码解组 XML
JAXBContext jaxbContext = JAXBContext.newInstance(SummaryResults.class);
Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller();
jaxbUnmarshaller.setEventHandler(
event -> {
throw new RuntimeException(event.getMessage(),
event.getLinkedException());
}
);
SummaryResults summaryResults = (SummaryResults) jaxbUnmarshaller.unmarshal(new
StringReader(xml));
这是我从 XSD 生成的 JAXB 类
@XmlType(name = "", propOrder = {
"responseHeader"
})
@XmlRootElement(name = "SummaryResults")
public class SummaryResults {
@XmlElement(name = "ResponseHeader", required = true)
protected SummaryResults.ResponseHeader responseHeader;
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "")
public static class ResponseHeader {
@XmlAttribute(name = "FileType")
protected String fileType;
}
}
这是我的示例 xml
<SummaryResults>
<ResponseHeader>
<FileType>CFF</FileType>
</ResponseHeader>
</SummaryResults>
但是当运行我的应用程序时,我收到一个错误
unexpected element (uri:"", local:"FileType"). Expected elements are (none)
如何解决问题?
解决方案
推荐阅读
- c++ - Fixed_alpha_shape_3() 会破坏或修改原始三角测量吗?
- javascript - 如何在 Javascript 中为数组创建键?
- python - 如果相同的元素在 Python 数据类型(字符串/列表/元组)中引用相同的对象,那么如何确定变量的大小?
- javascript - 使用 createjs 系列的 preload.js 调用函数后音频不播放
- image - 设置新 src 时 Nativescript 调整图像大小?
- react-native - React Native View 不显示任何内容
- php - 如何使用 Symfony 4 中的事件处理异常?
- javascript - this.map.set(key,value) 函数在 angualr 6 typescript 2.9.2 中不起作用
- html - Booststrap 表插入模数后断裂
- django - Django:无法创建通用外键对象