Вопрос проверяет понимание жизненного цикла бинов в Spring и различий между scope’ами.
Короткий ответ
Для бинов со scope prototype Spring не управляет полным жизненным циклом. Контейнер отвечает только за создание и внедрение зависимостей. Уничтожение prototype-бина находится на ответственности пользователя. Поэтому @PreDestroy для таких бинов не вызывается автоматически. Это ожидаемое поведение Spring.
Длинный ответ
Зарегистрироваться
Развернутый ответ доступен только зарегистрированным пользователям.