Использование Commons beanUtils Я хотел бы знать, как спросить какой-либо конвертер сказать Dateconverter игнорировать нулевые значения и использовать null по умолчанию. В качестве примера рассмотрим открытый класс,
public class X {
private Date date1;
private String string1;
//add public getters and setters
}
и мой convertertest как,
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());
}
}
Вышеуказанный код вызывает NPE, так как дата имеет значение null. Это выглядит очень примитивным сценарием для меня, который должен обрабатываться по умолчанию (как и в, я ожидал бы, что x2 будет иметь значение null для date1). Doco говорит мне, что я могу попросить converter сделать это. Может ли кто-нибудь указать мне на лучший способ сделать это?
Я не хочу, чтобы получить конвертер и isUseDefault(), чтобы быть правдой, потому что тогда я должен сделать это для всех Date, Enum и многих других преобразователей!