Не видятся методы контроллеров, помеченных @EnableAsync

Есть большой легаси-проект на Java, написанный с использованием Spring 3. Был проведен апгрейд до Spring 5. После этого, помимо прочего, проявился странный баг: перестали быть доступны эндпойнты в контроллерах, помеченных аннотацией @EnableAsync. Пример контроллера, переставшего быть доступным:

@EnableAsync
@Controller("/datasource/*")
public class DataSourceController extends SafeController {

@RequestMapping("/getData")
public ModelAndView getFormData(FormInfo formInfo, DatasourceInfo datasourceInfo, Integer page, Integer pageSize, String columns) {
    ….
}

}

Эту проблему мы решили, перенеся весь маппинг с контроллера на методы:

@EnableAsync
@Controller("/")
public class DataSourceController extends SafeController {

@RequestMapping("/datasource/getData")
public ModelAndView getFormData(FormInfo formInfo, DatasourceInfo datasourceInfo, Integer page, Integer pageSize, String columns) {
    ….
}

}

Однако корни происходящего выяснить не удалось. Контроллеров, не помеченных @EnableAsync, проблема не коснулась. Вдумчиво изучил описание @EnableAsync и @RequestMapping, но внятного объяснения не обнаружил. Однако хочется более глубокого понимания, поэтому обращаюсь к знающим людям: не могли бы вы указать, почему такое могло произойти? Большое спасибо.


Ответы (0 шт):