FasterXML / FasterXML/jackson-dataformats-binary
[protobuf] ObjectWriter fails to serialize depends on the order of messages
- Linguagem predominante
- Java
- Estrelas
- 347
- Forks
- 156
- Merge médio
- 3d 3h
- PRs com merge (30d)
- 22
Descrição
ObjectWriter fails to serialize depends on the order of messages defined in a proto file.
proto1 below works fine.
```
// proto1
message Main {
required Other o = 1;
}
message Other {
required int32 f = 1;
}
```
proto2 below fails. The only difference is the order of message types.
```
// proto2
message Other {
required int32 f = 1;
}
message Main {
required Other o = 1;
}
```
Stack trace
```
com.fasterxml.jackson.core.JsonGenerationException: Unrecognized field 'o' (in Message of type Other); known fields are: [Field 'f', tag=8, wireType=0, fieldType=VINT32_STD]
at com.fasterxml.jackson.core.JsonGenerator._reportError(JsonGenerator.java:1914)
at com.fasterxml.jackson.dataformat.protobuf.ProtobufGenerator.writeFieldName(ProtobufGenerator.java:299)
at com.fasterxml.jackson.databind.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:725)
at com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:716)
at com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:155)
at com.fasterxml.jackson.databind.ser.DefaultSerializerProvider._serialize(DefaultSerializerProvider.java:481)
at com.fasterxml.jackson.databind.ser.DefaultSerializerProvider.serializeValue(DefaultSerializerProvider.java:401)
at com.fasterxml.jackson.databind.ObjectWriter$Prefetch.serialize(ObjectWriter.java:1392)
at com.fasterxml.jackson.databind.ObjectWriter._configAndWriteValue(ObjectWriter.java:1120)
at com.fasterxml.jackson.databind.ObjectWriter.writeValueAsBytes(ObjectWriter.java:1017)
at com.fasterxml.jackson.dataformat.protobuf.schema.MessageResolutionTest.serializeTest(MessageResolutionTest.java:85)
```
Here is the [test case](https://gist.github.com/knoguchi/1ac2c621f27beeb3711fa397d06c31b1).
Guia de contribuição
Nenhum guia de contribuição indexado para este repositório
Avaliação
Esta issue ainda não foi avaliada.