JAXB демонтаж «общих» документов реального мира

У нас большой набор конфигурационных документов стиля


  
    ...more content
  
  
    ..more content
  
  ...

Все классы реализации общего назначения отображаются с использованием самого Jaxb.

Прежде чем я, наконец, вернусь к Xstream, вопрос к сообществу: есть ли (не взломанный) способ получить этот unmarshalled в Jaxb. То, что мы попробовали до сих пор, это "вложенный» распаковка с использованием @XMLAdapter, где "бар" поле получает элемент, получает целевой класс и вызывает другоймаршализация» цикл. Этот подход был а) довольно медленным и б) сломался с переключением на Java 7, где какой-то волшебный ThreadLocal разрушает контекст при возврате из внутреннего unmarshall.

Я обнаружил, что MOXy может поддерживать это с помощью @XmlDiscriminatorNode - это выглядит как хорошее решение, и мне очень нравится очень хороший вклад Blaise - но добавление>7MB lib просто для удовольствия не вариант.

Другие идеи?