Web services XStream忽略第一属性';s别名

Web services XStream忽略第一属性';s别名,web-services,xml-serialization,xstream,Web Services,Xml Serialization,Xstream,我已经为一个问题挣扎了6个多小时,在网上搜索这个问题并没有多大帮助 我使用这个类来生成XML(XStreamfromThoughWorks)。除了一个类之外,它在应用程序中的任何地方都可以正常工作。别名在类和第一个属性中进行注释,无论它是哪个属性,其别名都将被忽略 下面是课堂: @XStreamAlias(“fncgravapramiculatular”) 公营预弯{ @XStreamAlias(“NOME”) 私有字符串名称; @XStreamAlias(“NASCIMENTO”) 私人约会纳

我已经为一个问题挣扎了6个多小时,在网上搜索这个问题并没有多大帮助

我使用这个类来生成XML(
XStream
fromThoughWorks)。除了一个类之外,它在应用程序中的任何地方都可以正常工作。别名在类和第一个属性中进行注释,无论它是哪个属性,其别名都将被忽略

下面是课堂:

@XStreamAlias(“fncgravapramiculatular”)
公营预弯{
@XStreamAlias(“NOME”)
私有字符串名称;
@XStreamAlias(“NASCIMENTO”)
私人约会纳西门托;
@XStreamAlias(“SEXO”)
私人字符串sexo;
@XStreamAlias(“CIV_CODIGO”)
私有整数civCodigo;
.
.
.
但生成的XML是:


QA点击
17091989
M
1.
.
.
.
不知何故,
XStream
忽略了第一个字段的别名。我尝试上下移动字段,但无论第一个属性是什么,都会发生这种情况

整个项目是使用
XStream
@XStreamAlias
构建的,所以我不能改变事情的处理方式。我必须使用
XStream
和注释

XStream
版本是1.4.7,Java 1.6,带有Spring和其他小工具


谢谢您的时间。

类似的问题/答案(不确定是否重复)。这可能会有帮助:您好。我的问题不止于此,在我向类中添加一个新字段之前,整个过程都运行良好。然后它开始像这样运行。即使我删除了添加的字段,行为也不会改变。在我的情况下,它不是一个bean,而是在web服务调用中使用的。您是否尝试过更改声明的顺序如果你把
nascimento
放在
nome
之前,会发生什么?同样的事情会发生在
nascimento
上吗?是的,nome出现的很好。我不确定这是一个bug,但它看起来确实像一个。为了确保这不是一个配置问题,你可以编写一个最小的pp仅使用一个类和两个或三个字段,然后查看问题是否继续发生。您也可以尝试解决方法。我上次使用
XStream
几乎是十年前的事了,没有任何注释,但您可以使用
XStream
对象并调用
XStream.aliasField(“NOME”,prematriculatular.class,“NOME”)
。这可能是一种解决方法。您也可以尝试使用字段键排序器。但是,首先用一个简单的示例看看它是否失败。如果失败,请检查您的配置。