2012-06-26 3 views
2

Im пытается создать xml-файл, похожий на приведенный ниже.JAXB XMLElementWrapper с атрибутом и значением

<message> 
    <header> 
     <params> 
     <param name="test1">value1</param> 
     <param name="test2">value2</param> 
     </params> 
    </header> 
</message> 

Не могли бы вы сообщить мне, как определить иерархию классов.

Спасибо, Prakash.A

+0

Следующие должны помочь: http://blog.bdoughan.com/2011/06/jaxb-and-complex-types-with-simple.html и http://blog.bdoughan.com/2010/09/ JAXB-коллекция-properties.html –

ответ

7
@XmlRootElement 
public class Message { 

    @XmlElement 
    private Header header; 
} 

public class Header { 

    @XmlElement(name="param") 
    @XmlElementWrapper 
    private Collection<Param> params; 
} 

public class Param { 

    @XmlAttribute 
    private String name; 

    @XmlValue 
    privaet String value; 
} 

геттеры/сеттеры на вашей марки.

0

Лучший способ использования @XmlElementWrapper. shouled обозначить имя. например @XmlElementWrapper (name = "params"), хотя в этой ситуации именем по умолчанию является имя свойства.

Смежные вопросы