0
message Example {
enum State {
Deleted = 1;
Inactive = 2;
Active = 4;
}
optional uint64 id = 1 [(gson_name) = "id"];
optional uint64 state = 2 [(gson_name) = "state"];
optional uint64 userId = 3 [(gson_name) = "uui"];
optional sint32 marketId = 4 [(gson_name) = "m"];
optional uint64 productId = 5 [(gson_name) = "p"];
}
JSON字符串如何將json字符串轉換爲protobuf消息對象?
v: String = {"m": 97, "state": 1, "uui": 1, "id": 1, "p": 1}
呼叫使用JSON失敗轉換。
gson.fromJson(v, classOf[Example])
異常 顯示java.lang.NullPointerException
我不知道這是否是轉換JSON來生成原類的正確途徑。有人能告訴我我做錯了什麼,或者建議一些其他方法來完成這個。我在protobuf版本2.6,並不能真正移動到這個項目3。
謝謝,但我希望能得到JSON序列化爲我的protobuf消息生成的Java類的對象。如果我不得不轉換爲中間表示,我可能會使用噴射的json庫而不是gson。 – user2903819
建議不要更改生成的原始Java類以添加註釋以提及不同的屬性名稱。因此,使用屬性名稱解析了json並將其映射到PROTO java類。 – notionquest