title: Spring Cloud Stream with Avro cannot correctly convert String message
body: <p>I got a problem that source sends a GenericMessage [payload=xxxxx, ...] while sink receives the message as 10,120,120,120,120,120.</p>
  
  <p>This problem happened after I had set up Avro message converters. If I remove Avro message converters and use StreamListener to handle message conversion, it will work fine.</p>
  
  <p>Source application.properties</p>
  
  <pre><code>spring.cloud.stream.bindings.toGreeting.destination=greeting
  spring.cloud.stream.bindings.toGreeting.contentType=application/*+avro
  spring.cloud.stream.schema.avro.dynamicSchemaGenerationEnabled=true
  </code></pre>
  
  <p>Sink application </p>
  
  <pre><code>server.port=8990 
  spring.cloud.stream.bindings.greeting.destination=greeting
  </code></pre>
  
  <p>Message Converter</p>
  
  <pre><code>@Configuration
  @EnableSchemaRegistryClient
  public class MessageConverterConfig {
      @Bean
      public MessageConverter topic1MessageConverter() throws IOException {
          return new AvroSchemaMessageConverter(MimeType.valueOf("avro/bytes"));
      }
  }
  </code></pre>
  
  <p>Application Class </p>
  
  <pre><code>@SpringBootApplication
  @EnableSchemaRegistryClient
  public class SourceApplication {
      public static void main(String[] args) {
          SpringApplication.run(SourceApplication.class, args);
      }
  }
  
  @EnableSchemaRegistryServer
  @EnableSchemaRegistryClient
  @SpringBootApplication
  public class SinkApplication {
      public static void main(String[] args) {
          SpringApplication.run(SinkApplication.class, args);
      }
  }
  </code></pre>
  
  <p>Am I missing configurations?
  Thanks.</p>