JSON insensible à la casse à la cartographie POJO sans changer le POJO

Personne ne sait comment com.fasterxml.jackson.databind.ObjectMapper est capable de carte JSON propriétés de POJO propriétés insensible à la casse?

JSON-Chaîne:

[{"PRENOM":"Jean","LASTNAME":"Martin","DATEOFBIRTH":"1980-07-16T18:25:00.000 Z"}]

POJO-Catégorie:

public class Person {

    private String firstName;
    private String lastName;
    private Date dateOfBirth;

    public String getFirstName() {
        return firstName;
    }
    public void setFirstName(String firstName) {
        this.firstName = firstName;
    }
    public String getLastName() {
        return lastName;
    }
    public void setLastName(String lastName) {
        this.lastName = lastName;
    }
    public Date getDateOfBirth() {
        return dateOfBirth;
    }
    public void setDateOfBirth(Date dateOfBirth) {
        this.dateOfBirth = dateOfBirth;
    }
}

Test-Catégorie:

@Test
public final void testDeserializingPersonJsonToPersonClass()
        throws JsonParseException, JsonMappingException, IOException {
    final String jsonAsString = "[{\"FIRSTNAME\":\"John\",\"LASTNAME\":\"Doe\",\"DATEOFBIRTH\":\"1980-07-16T18:25:00.000Z\"}]";
    final ObjectMapper mapper = new ObjectMapper();

    final Person person = mapper.readValue(jsonAsString, Person.class);

    assertNotNull(person);
    assertThat(person.getFirstName(), equalTo("John"));
}

Cela se termine en erreur suivant:
com.fasterxml.jackson.databind.JsonMappingException: ne Peut pas désérialiser instance de ...

Il n'est pas possible de modifier ni JSON String ni POJO de Classe.

source d'informationauteur Mark Fellner