Попытка получить SOAP-вызовы от wsdl, работающего в PHP.Запрашивая сервер оси WebCT wsdl, и я получаю ответ, что он имеет следующие функции:
Array
(
[0] => SessionVO login(string $user, string $password, string $learningContextID)
[1] => void logout(SessionVO $session)
[2] => ArrayOf_xsd_long getLearningContextIDs(SessionVO $session)
[3] => ArrayOf_xsd_long getTemplateIDs(SessionVO $session, long $learningContextID)
[4] => ArrayOf_xsd_string getRoleIDs(SessionVO $session, long $learningContextID)
[5] => LearningCtxtVO getLearningContext(SessionVO $session, long $learningContextID)
[6] => ArrayOfLearningCtxtVO getLearningContextList()
[7] => RoleVO getRoleDefinition(SessionVO $session, string $roleID)
[8] => ArrayOfRoleVO getRoles(SessionVO $session, long $learningContextID)
[9] => ArrayOfSourcedIDVO getLearningGroupsByIMSId(SessionVO $session, SourcedIDVO $imsid)
[10] => ArrayOfSourcedIDVO getLearningGroupsByLCId(SessionVO $session, long $lcid)
[11] => ArrayOfSourcedIDVO getLearningGroupMembers(SessionVO $session, long $lcid)
[12] => TemplateVO getTemplate(SessionVO $session, long $learningObjectID)
[13] => long getLearningContextIdByPath(SessionVO $session, string $path)
[14] => long getLearningContextIdBySourcedId(string $source, string $id)
[15] => string getReleaseVersion()
[16] => boolean isCompatibleWith(string $version)
[17] => ArrayOf_xsd_long getInstructorPersonIDs(SessionVO $session, long $lcid)
[18] => long getParent(SessionVO $session, long $lcid)
[19] => ArrayOf_xsd_long getChildren(SessionVO $session, long $lcid)
)
Однако, когда я выполняю следующую функцию, я получаю сообщение об ошибке "Нет такой операции" getLearningGroupsByIMSId '":
function getAllMembers($contextID = -1) {
try {
$learingContext = $this->context->getLearningContext($this->session,$contextID);
print_r($learingContext);
$groups = $this->context->getLearningGroupsByIMSId($this->session,$learingContext->sourcedID);
print_r($groups);
foreach($groups as $group) {
$members = $this->context->getLearningGroupMembers($this->session,$group->sourcedID->myID);
print_r($members);
}
} catch(Exception $e) {
print_r($e);
return false;
}
return $members;
}
Есть идеи, почему он может не распознавать эту функцию, даже если она отображается в списке функций?Кажется, что все другие функции работают кроме этого и getLearningGroupsByLCId - обе дают ту же ошибку.