Given this behaviour exists in multiple places in this controller, along with its exception handling, it should be extracted into filter.