Intereting Posts
MySQL: добавьте в несколько таблиц в одном запросе с помощью BEGIN & COMMIT Как разместить изображение в Twitter с помощью PHP? Содержимое из div PHP PDO Зависимость от Laravel не может быть получена с помощью композитора. Альтернатива для получения источника L4? Показывать пользовательское поле продукта до краткого описания в WooCommerce Наиболее эффективный способ передачи переменных PHP во внешний файл JavaScript (или jQuery) Как запрограммировать запрос MongoDB foreach на PHP Если вы включите файл в PHP в цикле, он будет обращаться к файлу каждый раз, когда он будет работать в цикле? Мой сайт php был взломан кодами, загруженными как изображение ..? Ошибки проверки формы отображения рядом с каждым полем Получить данные из базы массива по значению в этом массиве Как написать пустой ассоциативный массив ({}) в MongoDB из PHP Лучший способ реализовать шаблон декоратора для кэширования результатов метода в PHP Что такое phtml, и когда следует использовать расширение .phtml, а не .php? почему функция php mail не работает в xampp

Исключение в моем первом клиенте SOAP

Я пытаюсь написать SOAP-клиент для службы по адресу https://webservice.kareo.com/services/soap/2.1/KareoServices.svc?wsdl

Я запросил типы (_ getTypes) и функции ( _getFunctions), которые предлагает сервис. Ниже приведена структура типа для операции GetPatients, которую я пытаюсь выполнить:

struct GetPatients { GetPatientsReq request; } struct GetPatientsReq { PatientFieldsToReturn Fields; PatientFilter Filter; } struct PatientFieldsToReturn { boolean AddressLine1; boolean AddressLine2; boolean Age; . . . } struct PatientFilter { string CollectionCategoryName; string DefaultCasePayerScenario; string FirstName; . . . } struct GetPatientsResponse { GetPatientsResp GetPatientsResult; } struct GetPatientsResp { ArrayOfPatientData Patients; } struct ArrayOfPatientData { PatientData PatientData; } struct PatientData { string AddressLine1; string AddressLine2; string Adjustments; string Age; . . . } 

Определение функции:

GetPatientsResponse GetPatients (параметры GetPatients $)

Ниже приведен мой PHP-код, который пытается использовать операцию GetPatients в веб-службе:

  <?php $url="https://webservice.kareo.com/services/soap/2.1/KareoServices.svc?wsdl"; $client=new SoapClient($url); /* fake user, password, key */ $CustomerKey='xxx'; $User='rmg15'; $Password='pass77'; $PatientID='1234'; $authheader=array("CustomerKey"=>$CustomerKey,"User"=>$User,"Password"=>$Password); $header = new SoapHeader("https://webservice.kareo.com/services/soap/2.1/","AuthHeader", $authheader,false); $client->__setSoapHeaders(array($header)); /* it works till this point because I was able to successfully perform the __getTypes, __getFunctions operations. */ $filter= array("FirstName"=>"rmg15"); $fields=array("age"=>"true"); $request=array("PatientFieldsToReturn"=>$fields,"PatientFilter"=>$filter); $getpatientreq=array("GetPatientsReq"=>$request); try { $presponse=$client->GetPatients($getpatientreq); } catch (Exception $ex) { var_dump($ex->faultcode, $ex->faultstring, $ex->faultactor, $ex->detail, $ex->_name, $ex->headerfault); } ?> 

Это исключение, которое я получаю от службы:

"В экземпляре объекта не задана ссылка на объект."

Исключение выбрано в этой строке:

$ Presponse = $ client-> GetPatients ($ getpatientreq)

Вот полное сообщение об исключении:

 object(stdClass)#7 (1) { ["ExceptionDetail"]=> object(stdClass)#8 (5) { ["HelpLink"]=> NULL ["InnerException"]=> NULL ["Message"]=> string(53) "Object reference not set to an instance of an object." ["StackTrace"]=> string(755) " at KareoServicesWCF.KareoServices.GetPatients(GetPatientsReq request) in c:\BuildAgent\work\309fd08b06e24475\Superbill\Software\Application\KareoServicesWCF\2.1\KareoServicesWCF\KareoServices.cs:line 497 at SyncInvokeGetPatients(Object , Object[] , Object[] ) at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs) at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage31(MessageRpc& rpc) at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)" ["Type"]=> string(29) "System.NullReferenceException" 

Это первый клиент SOAP, который я пишу. Любая помощь в исправлении этого будет полезна.