Я пытаюсь соединить мое клиентское мыло с моим мылом подачи без успеха на Laravel. Мой ТАК убунту 16.
Я искал в Google и здесь на stackoverflow, и я ничего не нашел.
Это мой маршрут:
Route::get('/server.wsdl','SOAP\WsdlController@index');
Route::any('/server','SOAP\ServidorController@server');
Route::get('/client','SOAP\ClientController@client');
Это мой ClientController:
use Zend\Soap\Client;
public function client(){
$client = new Client('http://localhost:8080/server.wsdl',[
'soap_version'=> SOAP_1_1
]);
$array = array(
"num1" => 10,
"num2" => 10
);
print_r($client->sum($array));
}
Это мой ServidorController:
use Zend\Soap\Server;
class ServidorController extends Controller
{
public $serverUrl = "http://localhost:8080/server";
public function server()
{
$soap = new Server($this->serverUrl . '.wsdl');
$soap->setClass('App\Http\Controllers\Classes\Hello');
$soap->handle();
}
}
Это мой WsdlController:
use Zend\Soap\AutoDiscover;
class WsdlController extends Controller
{
public $serverUrl = "http://localhost:8080/server";
public function index()
{
$soapAutoDiscover = new AutoDiscover(new
\Zend\Soap\Wsdl\ComplexTypeStrategy\ArrayOfTypeSequence());
$soapAutoDiscover->setBindingStyle(array('style' => 'document'));
$soapAutoDiscover->setOperationBodyStyle(array('use' =>
'literal'));
$soapAutoDiscover->setClass('App\Http\Controllers\Classes\Hello');
$soapAutoDiscover->setUri($this->serverUrl);
$soapAutoDiscover->handle();
}
}
Наконец, это мой класс Здравствуйте:
class Hello
{
/**
* @param int $num1
* @param int $num2
* @return int
*/
function soma($num1, $num2)
{
return $num1 + $num2;
}
}
Мой фреймворк показывает эту ошибку:
SoapFault
Слишком мало аргументов для функции App \ Http \ Controllers \ Classes \ Hello :: soma (), 1 передано и ожидается ровно 2
Но в объявлении функции я поставил 2 аргумента. Что случилось с этим?