Improve the dispatcher and add a handle server action method helper