将XML翻译为protobuf

时间:2011-10-19 19:10:15

标签: xml protocol-buffers jibx

我正在编写一个java模型应用程序,它将模式绑定的XML作为输入,需要将其转换为protbuf。无需处理;我只需要从XML中获取一些字段并使用它们来创建一个protobuf。

我希望我可以使用JIBX直接将XML映射到我的protobuf的Builder类,从而消除任何中间工作。但是,JIBX要求构建对象的set方法返回void(http://jibx.sourceforge.net/details/binding-attributes.html)。 Protobuf生成的Builder类遵循构建器设计模式,并且不会从其setter方法返回void。

有没有解决这个问题并让JIBX直接将XML转换为protobuf类?也许还有另一种XML解析工具*我应该考虑使用?或者我是否必须编写一些中间代码以便于XML和protobuf之间的转换?

*注意:我收到的输入XML非常大,我只需要一些字段。这折扣了我使用的一些较重的XML解析工具。

1 个答案:

答案 0 :(得分:0)

我最终在输入xml上执行XSL转换,并通过(小)自定义SAX Parser输出输出以创建protobuf。谢谢你的帮助!