|
|
|
JAXB
|
|||
|---|---|---|---|
|
#18+
есть схема: ... <xs:complexType name="stepType"> <xs:choice maxOccurs="unbounded" minOccurs="0"> <xs:element type="nameType" name="name"/> <xs:element type="xs:string" name="userdata"/> <xs:element name="flags"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="1"/> <xs:enumeration value="2"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="metadata"> <xs:complexType mixed="true"> <xs:sequence> <xs:element type="metaType" name="meta" maxOccurs="unbounded" minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element type="actionType" name="action"/> <xs:element type="xs:string" name="text"/> <xs:element type="callType" name="call"/> <xs:element type="stepType" name="step"/> <xs:element type="commentType" name="comment"/> </xs:choice> <xs:attribute type="xs:string" name="id" use="optional"/> <xs:attribute type="xs:string" name="template_id" use="optional"/> </xs:complexType> ... JAXB сгенерил: public class StepType { @XmlElementRefs({ @XmlElementRef(name = "flags", type = JAXBElement.class, required = false), @XmlElementRef(name = "action", type = JAXBElement.class, required = false), @XmlElementRef(name = "step", type = JAXBElement.class, required = false), @XmlElementRef(name = "text", type = JAXBElement.class, required = false), @XmlElementRef(name = "metadata", type = JAXBElement.class, required = false), @XmlElementRef(name = "userdata", type = JAXBElement.class, required = false), @XmlElementRef(name = "name", type = JAXBElement.class, required = false), @XmlElementRef(name = "comment", type = JAXBElement.class, required = false), @XmlElementRef(name = "call", type = JAXBElement.class, required = false) }) protected List<JAXBElement<?>> nameOrUserdataOrFlags; А мне вот нужно получить объект "metadata". Но метод-геттер: public List<JAXBElement<?>> getNameOrUserdataOrFlags() { if (nameOrUserdataOrFlags == null) { nameOrUserdataOrFlags = new ArrayList<JAXBElement<?>>(); } return this.nameOrUserdataOrFlags; } и соответственно, я получу объект типа JAXBElement, и не смогу понять, какого он типа( Что делать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2017, 15:04 |
|
||
|
JAXB
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Мне нужно получить как-то объекты metadata, userdata, но проблема в том, что они зашиты в @XmlElementRefs. Метод получения getNameOrUserdataOrFlags() - возращает все эти объекты с одним и тем же типом: JAXBElement ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2017, 09:50 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=56&tid=2122427]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
47ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
2ms |
| others: | 231ms |
| total: | 371ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...