У меня есть два XSD, которые я сгенерировал с помощью команды xjc JAXB.JAXB multiple xsd
http://www.imsglobal.org/xsd/imscp_v1p1.xsd и http://www.mmtech.ru/adlcp_v1p3.xsd
Я пытаюсь использовать объект Item с первого XSD как
ItemType item = factory.createItemType();
DataType dataType = factory.createDataType();
MapType mapType = factory.createMapType();
dataType.getMap().add(mapType);
item.getAny().add(dataType);
Заметим, что DataType и MapType оба из двух XSD.
я могу генерировать файл XML ожидать для одной задачи, он дает ошибку
причиненной: com.sun.istack.SAXException2 неспособны маршал типа «packagename.DataType» как элемент, потому что он отсутствует аннотация @XmlRootElement
Поэтому я попытался добавить @XmlRootElement в класс DataType и вместо него создать ns2: dataType, он создает XML ниже.
<item>
<dataType>
<ns2:map targetID="targetid" writeSharedData="false"/>
</dataType>
</item>
Просьба помочь. Спасибо
Вы запускали xjc один раз с обеих схем или один раз для каждого файла схемы? – Robert
Я запустил его один раз для обоих. – mezzie