JAXB - адаптер для библиотечного объекта

Я хочу прочитать целое число (внутри элемента XML) в семафор, а не в int, эффективно вызывая семафор (int theInteger) . Проблема в том, что у семафора нет конструктора по умолчанию. Если бы это был класс, который я написал, я мог бы либо создать частный конструктор без аргументов, либо написать адаптер, но, поскольку у меня нет доступа к семафору, что я могу сделать?

1 ответ

Решение

Объект, который вы адаптируете с XmlAdapter не нужен конструктор без художественного оформления. Вы можете настроить его следующим образом:

SemaphoreAdapter extends XmlAdapter<Integer, Semaphore>

Тогда вы бы использовали @XmlJavaTypeAdapter аннотация на свойство типа Semaphore ссылаться на XmlAdapter,

Другие вопросы по тегам