You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- When binding the consumer, the kafka consumer should not be set to use `ByteArrayDeserializer` for both key/value deserializer. Instead, they need to be used as the default values. Any extended consumer properties for key/value deserializer should override this default deserializer.
- Add test
This resolvesspring-cloud#55
- When binding the consumer, the kafka consumer should not be set to use `ByteArrayDeserializer` for both key/value deserializer. Instead, they need to be used as the default values. Any extended consumer properties for key/value deserializer should override this default deserializer.
- Add test
This resolvesspring-cloud#55
Add tests for custom/native serialization
- Test using built-in serialization without using kafka native serialization (ie. both the serializer/de-serializer are set to use ByteArraySe/Deserializer)
- Test using custom serializer by explicitly setting value.deserializer for both Kafka producer/consumer properties
- Test avro message conversion and Kafka Avro Serializer using Confluent Schema Registry
- Given pre-released registry versions have some bugs that blocks the testing and `3.0.1` requires Kafka 0.10, this test is only in Kafka .10 binder
Update Schema based custom serializer/de-serializer tests
Fix import
As described in http://stackoverflow.com/questions/39941497/spring-cloud-stream-kafka-consuming-avro-messages-from-confluent-rest-proxy, the Kafka Binders fail to deserialize Avro messages which have been serialized via Confluents serializer. The issue seems to be that the Confluent serializer adds 4 (or 5?) magic bytes at the beginning of each message which contains the Avro schema ID which can be used to retrieve the schema from the schema registry.
There seems to be no easy way to configure the bindings to use alternative serializers. From what I understand, the bindings hard-code the use of the Kafka ByteArrayDeserializer (https://github.com/spring-cloud/spring-cloud-stream-binder-kafka/blob/master/spring-cloud-stream-binder-kafka/src/main/java/org/springframework/cloud/stream/binder/kafka/KafkaMessageChannelBinder.java#L254).
The text was updated successfully, but these errors were encountered: