Привязка Универсального Класса Java к JSON, использующему JAXB

У меня есть следующий класс Java

@XmlRootElement
@XmlSeeAlso(DataClass.class)
public static class EnvelopeClass<T> {

    @XmlElement
    public String version;

    @XmlElement
    public T data;

    EnvelopeClass() {
    }

    EnvelopeClass(String version, T data) {
        this.version = version;
        this.data = data;
    }

}

@XmlRootElement
public static class DataClass {

    @XmlElement
    public String name;

    DataClass() {
    }

    DataClass(String name) {
        this.name = name;
    }

}

Я создаю его экземпляр и упорядочиваю его к json

EnvelopeClass<DataClass> dataClassEnvelopeClass = new EnvelopeClass<DataClass>("1.0", new DataClass("myName"));

У меня есть следующий результат:

{"version":"1.0","data":{"@type":"dataClass","name":"myName"}}

Я не хочу иметь информацию о типе типа в json "@type": "dataClass", другими словами, я хочу иметь следующий результат:

{"version":"1.0","data":{"name":"myName"}}

Точно этот результат, который я имею, когда EnvelopeClass не имеет Дженериков.

Существует ли способ сделать это?

5
задан Vladimir Sorokin 6 August 2010 в 10:08
поделиться