Все проблемы изза того что новички не знают что в приложении может быть несколько точек входа, например REST или консоль. Вот и пишут всю логику в веб контроллере. А когда придется написать еще API для какого нибудь мобилного приложения всю бизнес логику в веб контроллере надо будет скопипастить и в REST контроллеры. Можете подумать "скопировать несколько строк? пф, проще простого". Но проблемо то не в копировании. Проблемы начнутса когда современем бизнес логика начинает меняться и вам придется во всех точках доступа менять ваш код.