DpoHro
Новичок
Требуется вызвать посредством SOAP 2 функции, первая - получение токена, что у меня прошло успешно.
Вторая - ф-я занимающаяся неким расчетом.
Здесь и происходит ошибка.
Ошибка в параметре, который по идее исходящий.
Если я его не передаю в ф-ю, то возникает ошибка:
Server was unable to process request. ---> Value cannot be null. Parameter name: person
И основная проблема то в том что мне и заполнить то его нечем, потому заполняю всякой фигней и пробую передать.
На что браузер мне говорит, что ссылка не работает. По какой причине - хз, так как логи на сервере на эту тему молчат.
Вот так вот вызываю ф-ю. Видимо не правильно ((
Вторая - ф-я занимающаяся неким расчетом.
Здесь и происходит ошибка.
Ошибка в параметре, который по идее исходящий.
Если я его не передаю в ф-ю, то возникает ошибка:
Server was unable to process request. ---> Value cannot be null. Parameter name: person
И основная проблема то в том что мне и заполнить то его нечем, потому заполняю всякой фигней и пробую передать.
На что браузер мне говорит, что ссылка не работает. По какой причине - хз, так как логи на сервере на эту тему молчат.
Вот так вот вызываю ф-ю. Видимо не правильно ((
PHP:
$param = Array(
"soap_version" => SOAP_1_2,
"trace"=> 1,
"exceptions" => 1,
"encoding" => "utf-8"
);
$client = new SoapClient(
"https://someurl?WSDL",
$param
);
$result = $client->StartSession(
array("userName" => "somename", "password" => "somepwd")
);
$securityToken = new stdClass();
$securityToken->TokenType = $m_securityToken->TokenType;
$securityToken->Token = $m_securityToken->Token;
$riskprofilecontainer = new stdClass();
$riskprofilecontainer->InvestmentReturn = new stdClass();
$riskprofilecontainer->InvestmentReturn->KnowledgeAndExperience = new stdClass();
$riskprofilecontainer->InvestmentReturn->KnowledgeAndExperience->Question1 = true;
...
$riskprofilecontainer->InvestmentReturn->RiskTolerance = new stdClass();
$riskprofilecontainer->InvestmentReturn->RiskTolerance->Question1 = "Enough";
...
$person = new stdClass();
$person->RiskProfileId = "guid";
$person->InvestmentRiskProfile = "NoRisk";
...
$std = new stdClass();
$std->securityToken = $securityToken;
$std->riskprofilecontainer = $riskprofilecontainer;
//$std->person = $person;
$result1 = $client->CalculateInvestmentRiskProfile($std);