こんにちは Stackoverflow コミュニティです。
現在、Zend Framework 2 を使用して XML-RPC サーバーを開発しています。サーバーの作成を担当する ServiceController があります。
class ServiceController extends AbstractActionController{
public function xmlAction()
{
$this->handleXML();
$response = $this->getResponse();
return $response;
}
private function handleXML()
{
$xmlServer = new Zend\XmlRpc\Server();
$xmlServer->setClass('Beam\Model\service\Service', 'service');
echo $xmlServer->handle();
}
}
ServiceClass は私の Webapi です
class Service{
/**
* getAvailablePackages
*
* getAvailablePackages is responsible for returning all packages which reference a given licensenumber
*
* @param string $licenseNumber
* @return String
*/
public function getAvailablePackages($licenseNumber){
//need to access the entityManager
$em = $this->getServiceLocator->get('Doctrine\ORM\EntityManager');
return "testresponse";
}
}
XML RPC サーバーは正常に動作します。クライアントで getAvailablePackages メソッドを呼び出すと、応答として「testrespons」が返されます。ただし、問題は、getAvailablePackages でデータベースからいくつかのデータを選択したいのですが、非 Controller クラスで entityManager にアクセスする方法がわからないことです。
この問題を解決する方法を知っている人はいますか? ご回答ありがとうございます。