JAXB 2.1 - Настроить xs: любая привязка

Я хочу сгенерировать java-код из xsd, используя JAXB 2.1 XJC. У меня есть схема xsd, и я не могу ее изменить. Я хотел бы использовать режим xjc: simple при создании классов Java из схемы xml.

В xsd есть элементы:


Как указано здесь: http://jaxb.java.net/guide/Mapping_of__xs_any___.html Я ожидал, что эти элементы будут привязаны к:

@XmlAnyElement(lax=true)
public Object any;

но когда я использую простой режим привязки xjc: simple , у меня есть:

@XmlAnyElement
protected Element any;

Я пытался найти обходной путь, но везде сказано, что xs: any обрабатывается без конфигурации. Единственный способ иметь элемент xs: any как java.lang.Object - это удалить xjc: simple или изменить processContents на «strict» в xsd. Ни один из этих вариантов сейчас неприемлем для меня, поскольку я не могу изменить схему xml, и у меня есть устаревший код, который зависит от классов java, сгенерированных с помощью xjc: simple mode, но теперь мне нужно использовать xs: any element, и я хотел бы избегайте использования объектов org.w3c.dom.Element.

Любая помощь будет очень признательна. Спасибо.

7
задан arek 15 February 2012 в 12:45
поделиться