function processRequest($input) { $servlet = new RemoteServiceServlet(); $mappedClassLoader = new FolderMappedClassLoader(); $servlet->setMappedClassLoader($mappedClassLoader); $ret = $servlet->start($input); return $ret; }
/** * * * This start method swallows ALL exceptions, logs them * (default in the file: logger.output.html), and returns a GENERIC_FAILURE_MSG response with status code * 500. */ public function start($test_post_data = NULL) { try { if ($test_post_data === NULL) { $requestPayload = RemoteServiceServlet::readPayloadAsUtf8(); } else { $requestPayload = $test_post_data; } // Let subclasses see the serialized request. // $this->onBeforeRequestDeserialized($requestPayload); // Invoke the core dispatching logic, which returns the serialized // result. // $this->logger->info($requestPayload); $responsePayload = $this->processCall($requestPayload); $this->logger->info($responsePayload); // Let subclasses see the serialized response. // $this->onAfterResponseSerialized($responsePayload); // Write the response. // if ($test_post_data === NULL) { $this->writeResponse($responsePayload); } else { return $responsePayload; } } catch (Exception $ex) { $this->doUnexpectedFailure($ex); } }
<?php require_once dirname(__FILE__) . "/vendor/autoload.php"; Logger::configure(array('rootLogger' => array('appenders' => array('default')), 'appenders' => array('default' => array('class' => 'LoggerAppenderNull')))); GWTPHPContext::getInstance()->setServicesRootDir(dirname(__FILE__) . '/gwtphp-maps'); GWTPHPContext::getInstance()->setGWTPHPRootDir(GWTPHP_DIR); $servlet = new RemoteServiceServlet(); $mappedClassLoader = new FolderMappedClassLoader(); $servlet->setMappedClassLoader($mappedClassLoader); $servlet->start();