<?xml version="1.0" encoding="UTF-8" ?>
<tl2 version="1.06">
    <command name="AAA">
        <aid value="BBBB">
            <pattern>
                <responseBlock id="1">
                    <parameter id="1" name="name" value="" />
                </responseBlock>
            </pattern>
        </aid>
    </command>
</tl2>由上面一个xml,利用JAXB进行读写操作,当我读完后,就进行写操作时,
写完的XML中
<parameter id="1" name="name" value="" />这条记录的顺序变成了
<parameter value="" name="name" id="1" />,值都没有错,我想问一下,
这是怎么回事,是不是那个属性值没设置对呢?大侠帮忙求解!!

解决方案 »

  1.   

    你翻一下JAXB的标注中有一个propOrder,有可能可以解决你的问题。
    不过XML本身只是一个结构化的数据,这种属性的顺序是怎样的有关系吗?
      

  2.   


    解决了,使用你说的这个属性指定一下,但是呢,JDK有个bug。。
    Java SE 6的JAXB里、@XmlType(propOrder=...)指定的顺序和XML生成的正好相反,
    Java SE 7的JAXB(Version2.2)里,这个问题修正了!!!谢谢你的提示,也给你分吧!!
      

  3.   


    解决了,使用你说的这个属性指定一下,但是呢,JDK有个bug。。
    Java SE 6的JAXB里、@XmlType(propOrder=...)指定的顺序和XML生成的正好相反,
    Java SE 7的JAXB(Version2.2)里,这个问题修正了!!!谢谢你的提示,也给你分吧!!晕。。
    也给你分吧!!
    这句话没体现出来啊。