Наборы JAXB (Список <T>) Pascal-регистр Использования вместо Camel-регистра для Имен элементов

(setq initial-frame-alist '(
            (top . 40) (left . 10)
            (width . 128) (height . 68)
            )
  )
5
задан jallch 9 October 2009 в 17:14
поделиться

2 ответа

Try using @XmlElementWrapper which supports the name attribute:

@XmlElementWrapper(name="ELEMENTS")
@XmlElement(name="ELEMENT")
protected final List<String> elements = new LinkedList<String>();

Will produce

<ELEMENTS>
  <ELEMENT>one</ELEMENT>
  <ELEMENT>two</ELEMENT>
  ...
</ELEMENTS>

See the JAXB Tutorial for this feature.

9
ответ дан 18 December 2019 в 13:16
поделиться

Хорошо, я получил новости от лидера сообщества Java Jersey - Пола Сандоса. В настоящее время это открытая проблема с фреймворком Джерси, и нам придется ее решить или принять, пока она не будет исправлена ​​в будущем обновлении.

Обходной путь, как объяснено в одном из комментариев выше, состоит в том, чтобы ввести новый класс для каждого метода веб-службы, который возвращает коллекцию (например, список) аннотированных bean-компонентов JAXB. Этот класс фактически является классом, содержащим только один член - список JAXB-бинов. Вместо того, чтобы возвращать список в методе веб-службы, мы возвращаем специальный класс. Поскольку у нас есть контроль над именем нового класса в XML, например, @XmlRootElement (name = "Artifacts"), мы можем быстро решить проблему.

Надеюсь, это поможет.

С уважением,

Джеймс

5
ответ дан 18 December 2019 в 13:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: