イントラネットとエクストラネットの 2 つのアプリケーションがあります。エクストラネット アプリはデータベースと直接通信せず、Web サービスとのみ通信します。イントラネット アプリはデータベースで正常です。
データベースとの通信に SOAP を使用する必要があるため、View -> Controller -> Service -> Entity を使用します。
私が使用しているサービスと通信するために:
[コントローラ]
$client = new Client("my_soap_address");
$user = $client->test();
[サービス]
public function test()
{
$res = $this->em->getRepository("my_entity")->fetchPairs();
return $res;
}
SOAP がなくても完璧に動作します。SOAP では、次のエラーが返されます。
Call to a member function getRepository() on a non-object
サービスが文字列、整数、またはブール値を次のように返す場合:
[サービス]
public function test()
{
return "is OK";
}
私の SOAP は正常に動作します。
問題は、getRepository()、getReference() などのメソッドです。しかし、データベースから情報を取得または配置するには、これらのメソッドが必要です。
誰でもこの問題を解決できますか?
どうもありがとう!
ps .: コントローラーとサービスの間に handleWSDL と handleSOAP を備えたコントローラーがあります。