Я пытаюсь понять, когда происходит сбой на пустом bean-компоненте, из документа:
public static final SerializationFeature FAIL_ON_EMPTY_BEANS Функция, которая определяет, что происходит, когда не найдены методы доступа для типа (и естьнет аннотаций, чтобы указать, что он предназначен для сериализации).Если включено (по умолчанию), выдается исключение, чтобы указать их как несериализуемые типы;если отключено, они сериализуются как пустые объекты, т.е. без каких-либо свойств.Обратите внимание, что пустые типы, которые эта функция оказывает влияние только на те «пустые» бины, которые не имеют каких-либо распознанных аннотаций (например, @JsonSerialize): те, которые имеют аннотации, не приводят к исключению.
Featureпо умолчанию включен.
Теперь я попытался создать пустой POJO (без методов получения):
@Component
public class Wrapper2 {
private String name;
}
Класс оболочки, который я хочу сериализовать:
@Component
public class Wrapper {
@Autowired
private Wrapper2 wrapper2;
}
Контроллер:
@RestController
public class TestController {
@Autowired
private Wrapper wrapper;
@GetMapping("/test")
public Wrapper test() {
return wrapper;
}
}
однако я всегда сериализую обертку даже с добавлением / удалением геттера и сеттера для обертки2.Кто-нибудь может объяснить, когда может произойти ошибка?