Изменить имя элемента аннотированного подкласса JAXB - PullRequest
4 голосов
/ 16 ноября 2010

Я пытаюсь создать иерархию классов jaxb для домена веб-служб. Мне кажется неудобным, что подкласс, который переопределяет метод-получатель в суперклассе, может изменить имя элемента, которое выводит JAXB, но имя суперкласса также записывается в вывод. Мне интересно, есть ли способ подавить геттер в суперклассе.

Код:

@XmlType
class SuperClass
{
    @XmlElement(name = "Name")
    public String getName(){}
}

@XmlType
class SubClass extends SuperClass
{
    @Override
    @XmlElement(name = "CoolName")
    public String getName(){}
}

Когда я добавляю элемент SubClass в XmlRootElement, выходной XML содержит два элемента, и . Есть ли способ подавить маршалирование ?

1 Ответ

2 голосов
/ 16 ноября 2010

Нужно ли иметь свойство name в сопоставленном SuperClass?Если нет, вы можете просто пометить это свойство @ XmlTransient.

class SuperClass
{
    @XmlTransient
    public String getName(){}
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...