title: Spring Cloud AWS Issue with setting manual acknowledge of SQS message
body: <p>I'm trying to implement logic with manual deleting of AWS SQS message using spring-cloud-aws-messaging. This feature was implemented in scope of <a href="https://github.com/spring-cloud/spring-cloud-aws/issues/51" rel="noreferrer">this ticket</a> <a href="https://github.com/spring-cloud/spring-cloud-aws/commit/ae567dad0cf21ed729e432653356d7467c9b4eb6#diff-37e58a3c2641e5dd886cf77c0b82da62R255" rel="noreferrer">from the example in tests</a></p>
  
  <pre><code>@SqsListener(value = "queueName", deletionPolicy = SqsMessageDeletionPolicy.NEVER)
  public void listen(SqsEventDTO message, Acknowledgment acknowledgment) {
  
      LOGGER.info("Received message {}", message.getFoo());
      try {
          acknowledgment.acknowledge().get();
      } catch (InterruptedException e) {
          LOGGER.error("Opps", e);
      } catch (ExecutionException e) {
          LOGGER.error("Opps", e);
      }
  }
  </code></pre>
  
  <p>But faced with the unexpected exception </p>
  
  <p><code>com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot construct instance of</code>org.springframework.cloud.aws.messaging.listener.Acknowledgment<code>(no Creators, like default construct, exist): abstract types either need to be mapped to concrete types, have custom deserializer, or contain additional type information
  </code></p>
  
  <p>Solution with <code>SqsMessageDeletionPolicy.ON_SUCCESS</code> works but I want to avoid throwing an exception.</p>
  
  <p>What have I missed in the configuration? </p>