Its up to you :)))
Using interceptors (#1) is totally valid - and I usually use that as well. With interceptors you can fine control the error handling etc directly in the annotations. Works well :) With interceptors you have also an option to continue the flow, if some exception can be 'swallowed'.
Madvoc controller can be used as well - although then you get one single place to control exceptions - which is totally fine as well :)
Since the whole logic is that simple: "controler -> filter -> action" these are the points where you can catch and handle exceptions :)
So once again - there is no special recommendation for this, you perfectly got it right ;)
On Wednesday, November 11, 2015 at 2:10:46 PM UTC+1,