我正在编写一个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解析工具。
答案 0 :(得分:0)
我最终在输入xml上执行XSL转换,并通过(小)自定义SAX Parser输出输出以创建protobuf。谢谢你的帮助!