我们可以使用协议缓冲区使用命名空间序列化xml吗?

时间:2017-01-11 13:47:00

标签: java serialization protocol-buffers protobuf-net xmlserializer

我为下面的示例xml创建了Proto文件,我可以将其序列化。

XML <Employee><name>abc</name><id>123</id><email>a</email></Employee>

Proto

package com.example;

option java_package = "com.example";
option java_outer_classname = "EmployeeProtoClass";

message Person {
  required string name = 1;
  required int32 id = 2;
  optional string email = 3;
}

但我的问题是,如果我的XML具有如下所示的命名空间,那么proto文件将如何用于它?我创建了如下所示,但我在转换时遇到错误(缺少字段名称)。

带命名空间的XML(EmployeeIN.xml)

<in:Employee xmlns:in="http://employee.in.com">
    <in:name>abc</in:name>
    <in:id>123</in:id>
    <in:email>a</in:email>
</in:Employee>

EmployeeIn.xml的原型文件

package com.example;

option java_package = "com.example";
option java_outer_classname = "EmployeeINProtoClass";

message Person {
  required string in:name = 1;
  required int32 in:id = 2;
  optional string in:email = 3;
}

有谁能建议我们如何使用协议缓冲区序列化它?

0 个答案:

没有答案