Comment demander BeanUtils d'ignorer les valeurs null

À l'aide de Communes beanUtils je voudrais savoir comment faire pour demander à n'importe quel convertisseur de dire la Dateconverter à ignorer les valeurs nulles et utiliser la valeur null comme valeur par défaut. Par exemple, considérez une classe publique,

public class X {
    private Date date1;
    private String string1;
    //add public getters and setters
}

et mon convertertest que,

public class Apache {

    @Test
    public void testSimple() throws Exception {
        X x1 = new X(), x2 = new X();
        x1.setString1("X");
        x1.setDate1(null);
        org.apache.commons.beanutils.BeanUtils.copyProperties(x2, x1);
        //throws ConversionException
        System.out.println(x2.getString1());
        System.out.println(x2.getDate1());
    }
}

Ci-dessus jette un NPE depuis la date se trouve être null. Cela ressemble un très primitive du scénario pour moi, qui doit être manipulé par défaut (comme dans, je l'espère x2 pour avoir la valeur null pour date1). Le doco me dit que je peux demander à le convertisseur pour ce faire. Quelqu'un peut-il m'indiquer la meilleure façon de faire cela ?

Je ne veux pas mettre la main sur le Convertisseur et isUseDefault() pour être vrai parce que puis-je faire pour l'ensemble des Date, Enum et de nombreux autres convertisseurs !

OriginalL'auteur Kannan Ekanath | 2010-04-08