title: @JsonSerialize / @JsonDeserialize not invoked with Spring MVC
body: <p>I have a Spring 3.1 MVC project, and I'm having trouble deserializing a request sent to the following controller method:</p>
  
  <pre><code>@RequestMapping(value="/deposit",method=RequestMethod.POST)
  public void deposit(@RequestBody DepositRequest request)
  {
  }
  </code></pre>
  
  <p>The request object which contains a Joda Money value, which I've registered a custom serializer/deserializer for:</p>
  
  <pre><code>public class DepositRequest {
      private Money amount;
      @JsonDeserialize(using=JodaMoneyDeserializer.class)
      @JsonSerialize(using=JodaMoneySerializer.class)
      public Money getAmount() {
          return amount;
      }
      public void setAmount(Money amount) {
          this.amount = amount;
      }
  }
  </code></pre>
  
  <p>And the deserializer:</p>
  
  <pre><code>public class JodaMoneyDeserializer extends JsonDeserializer&lt;Money&gt; {
  
      @Override
      public Money deserialize(JsonParser parser, DeserializationContext context)
              throws IOException, JsonProcessingException {
          String text = parser.getText();
          return Money.parse(text);
      }
  }
  </code></pre>
  
  <p>However, this deserializer is never invoked.  When I send the following JSON, I get a <code>400 - Bad Request</code> response, which I assume indicates that the mapper wasn't found.</p>
  
  <pre><code>{
      "amount" : "30AUD"
  }
  </code></pre>
  
  <p>Do I need to tell Spring about this mapper somehow, or is the annotation enough?
  What other steps should I be taking to get the deserialization to work?</p>