Почему BeanUtils.copyProperties выбрасывает исключение IllegalArgument?
У меня есть два класса с одинаковыми атрибутами и одинаковыми методами get и set, один следует шаблону DTO и шаблону VO.
Итак, у меня есть что-то вроде этого:
classDTO
private String x;
private String y;
classVO
private String x;
private String y;
Почему следующий код вызывает исключение illegalArgumentException
?
BeanUtils.copyProperties(classVO, classDTO);
1 ответ
Решение
Прочитайте API, и вы получите ответ на свой вопрос:
Броски:
IllegalArgumentException - если аргумент dest или orig является нулем или если тип свойства dest отличается от типа источника, и соответствующий конвертер не был зарегистрирован.
Кроме того, Java-определение bean-компонента - это сериализуемый класс с конструктором по умолчанию и методами получения и установки, которые разрешают доступ к его полям. Ваши примеры классов не соответствуют этим требованиям.