Перевод XML в protobuf - PullRequest
       12

Перевод XML в protobuf

2 голосов
/ 19 октября 2011

Я пишу Java-приложение, которое принимает ограниченный схемой XML в качестве входных данных и нуждается в преобразовании его в protbuf. Там нет обработки необходимо сделать; Мне просто нужно взять несколько полей из XML и использовать их для создания протобуфа.

Я надеялся, что смогу использовать JIBX для прямого сопоставления XML с классом Builder моего протобуфа, таким образом устраняя любую промежуточную работу. Однако JIBX требует, чтобы set-методы создаваемого объекта возвращали void (http://jibx.sourceforge.net/details/binding-attributes.html). Сгенерированный класс Protobuf Builder следует шаблону конструктора и не возвращает void из своего метода setter.

Есть ли способ обойти эту проблему и заставить JIBX напрямую переводить XML в класс protobuf? Возможно, есть другой инструмент разбора XML *, который я должен изучить в использовании? Или мне придется написать некоторый промежуточный код для облегчения перевода между XML и protobuf?

* примечание: входной XML, который я получаю, чрезвычайно велик, и мне нужно лишь несколько полей из него. Это исключает некоторые из более тяжелых инструментов синтаксического анализа XML от моего использования.

1 Ответ

0 голосов
/ 24 марта 2012

В итоге я выполнил XSL-преобразование для входного xml и передал вывод через (небольшой) настраиваемый SAX Parser для создания protobuf. Спасибо за помощь!

...