0

私はsymfony 2でSOAPサービスを作ろうとしましたが、その結果、次のようになりました:

     <trace>at Symfony\Component\HttpKernel\Debug\ErrorHandler->handle('2', 'SoapFault::SoapFault() expects at least 2 parameters, 1 given', '/var/www/Symfony/src/Acme/TxBundle/Controller/DefaultController.php', '39', array('ref' => '333', 'stockinfos' => null))  in  line</trace>

私の機能:

 public function getInformationStockAction($ref)
{
      $stockinfos = $this->container->get('doctrine')->getRepository('TxBundle:LlxProduct')->findOneBy(array('ref'=>$ref))
  ;


     if (!$stockinfos)
    {
       throw new \SoapFault(sprintf('No warehouse found for the given productRef : "%s" ', $ref ));

         }

       return $this->container->get('besimple.soap.response')->setReturnValue($stockinfos);

}

誰かがアイデアを持っていますか?どうも

4

1 に答える 1

1

ドキュメントSoapFault示唆するように、例外を作成するときに 2 つのパラメーターを指定する必要があります。

$faultCode = "yourCode"; // must be a string

throw new \SoapFault(
    $faultCodeHere, // This is the parameter you're missing :-)
    sprintf('No warehouse found for the given productRef : "%s" ', $ref)
);
于 2012-07-13T11:28:12.510 に答える