title: Spring Json deserialization to Java doesn't work
body: <p>I currently facing an issue with the deserialization of json into an polymorphic type.</p>
  
  <p>This is my controller which receives a RecommendedVirtualEditionParam.</p>
  
  <pre><code>@RequestMapping(
     value = "/sortedEdition", 
     method = RequestMethod.POST, 
     headers = { "Content-type=application/json;charset=UTF-8" 
  })
  public String getSortedRecommendedVirtualEdition(
      Model model, 
      @RequestBody RecommendVirtualEditionParam params) {
      //Do Stuff
  }
  </code></pre>
  
  <p>RecommendedVirtualEditionParam is a container:</p>
  
  <pre><code>public class RecommendVirtualEditionParam {
      private final String acronym;
      private final String id;
      private final Collection&lt;Property&gt; properties;
  
      public RecommendVirtualEditionParam(
          @JsonProperty("acronym") String acronym, 
          @JsonProperty("id") String id,
          @JsonProperty("properties") Collection&lt;Property&gt; properties) {
          this.acronym = acronym;
          this.id = id;
          this.properties = properties;
      }
  
      //Getters
  }
  </code></pre>
  
  <p>Property is a polymorphic type and I believe it's the one giving my problems.</p>
  
  <pre><code>@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type")
  @JsonSubTypes({
      @JsonSubTypes.Type(value = SpecificTaxonomyProperty.class, name = "specific-taxonomy")
  })
  public abstract class Property {
  
      public Property() {
      }
  
      //Other methods
  }
  </code></pre>
  
  <p>The sub type:</p>
  
  <pre><code>public class SpecificTaxonomyProperty extends Property {
      private final String acronym;
      private final String taxonomy;
  
      public SpecificTaxonomyProperty(
          @JsonProperty("acronym") String acronym,
          @JsonProperty("taxonomy") String taxonomy) {
          this.acronym = acronym;
          this.taxonomy = taxonomy;
  }
  </code></pre>
  
  <p>The json being send on requests:</p>
  
  <pre><code>{
      acronym: "afs"
      id: "167503724747"
      properties: [
          {
              type: "specific-taxonomy", 
              acronym: "afs", 
              taxonomy: "afs"
          }
      ]
  }
  </code></pre>
  
  <p>When I run it like this I get a org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'application/json;charset=UTF-8' not supported</p>
  
  <pre><code>org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'application/json;charset=UTF-8' not supported
  at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodArgumentResolver.readWithMessageConverters(AbstractMessageConverterMethodArgumentResolver.java:149) ~[spring-webmvc-3.2.2.RELEASE.jar:3.2.2.RELEASE]
  at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.readWithMessageConverters(RequestResponseBodyMethodProcessor.java:180) ~[spring-webmvc-3.2.2.RELEASE.jar:3.2.2.RELEASE]
  at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.resolveArgument(RequestResponseBodyMethodProcessor.java:95) ~[spring-webmvc-3.2.2.RELEASE.jar:3.2.2.RELEASE]
  </code></pre>
  
  <p>I believe there is something wrong with with the way I setup my Property class that makes it unable to deserialize. Any has a clue and give me an hand?</p>