The best alternative I had was controller callback (which as you noted requires some odd hookups)