java - xstream 没有解析根元素
问题描述
我正在使用'com.thoughtworks.xstream:xstream:1.4.10'
库并尝试解析 xml 文件。
Broker 是根元素,里面还有其他标签
<broker>
<othertags/>
</broker>
问题是当我生成一个 xml 文件时,它会正确生成,但它无法读取文件。
@XStreamAlias("broker")
public static class Broker {
在文件生成时,它能够将 Broker 类转换为但不能反过来。所有其他类和列表都已正确映射,但根@XStreamAlias
在阅读时不起作用。
任何关于为什么的指示都会非常有帮助。
我得到的例外:
com.thoughtworks.xstream.mapper.CannotResolveClassException: broker
还有一个问题:在调用 xStream.fromXML(responseString) 时,xStream 如何知道要使用哪个类?假设我有两个具有相同别名的类
解决方案
XStream 默认不处理注解。在 xml 内容的反序列化之前添加以下内容。
XStream xstream = new XStream();
xstream.processAnnotations(Broker.class);
推荐阅读
- python - 找不到我的代码的问题。错误:作为索引器提供的不可对齐的布尔系列
- python - 不和谐,py:AttributeError:'Context'对象没有属性'reference'
- laravel - 部署 laravel apache(禁止公共访问)
- shell - 遍历文件并排除具有特定名称模式的文件 Shell
- swift - 如何在 tvos 的表格视图中通过一个滑动手势继续降低单元格?
- laravel - 如何在 Laravel 中每隔一分钟运行一次调度程序而不设置 cron 作业?
- azure - 阻止浏览器在 APIM Azure 中提示输入客户端证书
- flutter - Flutter中TextField的当前焦点位置
- flutter - flutter_blue 如何停止连接()?
- excel - 如何使用 VBA 在 Excel 中打印所有子和父标记和值