public static function handlerRequest($data = NULL) { try { // se é uma chamada Ajax, inicializa MAjax if (Manager::isAjaxCall()) { Manager::$ajax = new \Maestro\UI\MAjax(Manager::getOptions('charset')); } MApp::contextualize(); self::setData($data ?: $_REQUEST); mtrace('DTO Data:'); mtrace(self::getData()); self::init(); do { self::$result = MApp::handler(); } while (self::$forward != ''); self::terminate(); } catch (\Maestro\Services\Exception\ENotFoundException $e) { self::$result = new Results\MNotFound($e); } catch (\Maestro\Services\Exception\ESecurityException $e) { self::$result = new Results\MInternalError($e); } catch (\Maestro\Services\Exception\ETimeOutException $e) { self::$result = new Results\MInternalError($e); } catch (\Maestro\Services\Exception\ERuntimeException $e) { self::$result = new Results\MRunTimeError($e); } catch (\Maestro\Services\Exception\EMException $e) { self::$result = new Results\MInternalError($e); } catch (\Exception $e) { self::$result = new Results\MInternalError($e); } }