add error_handler, fix pagination