JAXB - Подавить логический атрибут, если false

Допустим, у меня есть класс

@XmlRootElement(name="thing")
public class Thing{
    private String name;
    private boolean awesome;

    @XmlValue public void setName(String name) {
        this.name = name;
    }
    public String getName() {
        return this.value;
    }


    @XmlAttribute public void setAwesome(boolean awesome) {
        this.awesome = awesome;
    }
    public boolean isAwesome() {
        return this.awesome;
    }
}

Если я создаю какие-то вещи, а затем преобразую их в XML, это будет выглядеть так:

Летающий ниндзя:

<thing awesome="true">flying ninja</thing>

Обычный старый шар из попкорна:

<thing awesome="false">popcorn ball</thing>

Но ... я бы хотел изменить способ упорядочивания моих логических атрибутов. Я бы предпочел, чтобы шарик с попкорном выглядел так, подавив атрибут awesome:

<thing>popcorn ball</thing>

Как я могу это сделать?

Большое спасибо!

7
задан Paul Hanbury 1 July 2011 в 20:48
поделиться