Простой способ конвертировать org.apache.xmlbeansXmlObject в nu.xom.Element - PullRequest
2 голосов
/ 23 июня 2010

Я использовал инструмент scomp из XMLBeans для генерации классов Java, а затем заполнил поля в XmlObject (я написал этот код некоторое время назад).Теперь мне нужно преобразовать этот объект в класс Element , используемый библиотекой XOM .

Есть ли более простой способ, чем обход XmlObject с помощью XmlCursor и затем добавление дочерних узлов к цели Element, как вы идете?Я рассмотрел, возможно, использование некоторых классов org.w3.dom.*, но у меня возникли проблемы с поиском чего-то, что можно будет легко перевести между двумя библиотеками.

1 Ответ

2 голосов
/ 23 июня 2010

Я думаю, что разработал решение, которое я оставлю здесь на случай, если у кого-то еще возникнет эта проблема.

public static Element translate(XmlObject o)
{
  org.w3c.Document docOld = (org.w3c.dom.Document) o.newDomNode();
  nu.xom.Document docNew = DOMConverter.convert(docOld);
  return docNew.getRootElement();
}
...