/** * This method process an AJAX request * */ public function processRequest(__IRequest &$request, __IResponse &$response) { try { $return_value = $this->_resolveAndCallRemoteService($request); if ($return_value !== null) { if (function_exists('json_encode')) { $return_value = json_encode($return_value); } else { $services_json = new Services_JSON(SERVICES_JSON_LOOSE_TYPE); $return_value = $services_json->encode($return_value); } } $response->addContent($return_value); } catch (Exception $e) { $response->addHeader("HTTP/1.0 500 Internal Server Error"); $response->addContent(json_encode($e->getMessage())); } }