Korzystanie z Commons beanUtils Chciałbym wiedzieć, jak poprosić dowolnego konwertera, aby Dateconverter ignorował wartości puste i używał wartości domyślnej null. Jako przykład rozważmy publiczną klasę,Jak poprosić BeanUtils o zignorowanie wartości pustych
public class X {
private Date date1;
private String string1;
//add public getters and setters
}
i moją convertertest jak
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());
}
}
Powyższy rzuca NPE od daty zdarza się być null. Wygląda to dla mnie bardzo prymitywnym scenariuszem, który powinien być obsługiwany domyślnie (jak na przykład, oczekiwałbym, że x2 będzie mieć wartość null dla date1). Dokument mówi mi, że mogę poprosić o to converter. Czy ktoś może mi wskazać najlepszy sposób na zrobienie tego?
Nie chcę, aby konwerter i isUseDefault() były prawdziwe, ponieważ wtedy muszę to zrobić dla wszystkich dat, enum i wielu innych konwerterów!
http://commons.apache.org/proper/commons-beanutils/v1.8.3/apidocs/org/apache/commons/beanutils/ konwertery/DateConverter.html Twój link jest zepsuty – VedX