я использую gSOAP для запроса информации от веб-службы SOAP
веб-служба soap возвращает объект.я делаю запрос в вызовах с именем: "dataconnector"
в dataconnector я могу вывести все значения для возвращенного объекта, но за исключением того, что все ссылочные значения в объекте равны нулю.
я сделалнекоторые ищут и, соответственно, gSOAP удаляет все, если только вы не удалите его из цепочки освобождения с помощью soap_unlink ()
я пытался, но это не помогло, это мой код
любые идеи о том, что ячто-то не так?
QList<ns1__calls*> calls;
datacheckPortBindingProxy service;
ns1__getCalls request;
std::string un("4444");
request.username = &un;
ns1__getCallsResponse response;
if (service.getCalls(&request, &response) == SOAP_OK){
qDebug() << "succesfull response";
for(unsigned int i = 0; i< response.return_.size(); i++){
ns1__calls* call = response.return_.at(i);
qDebug() << QString(call->roomId->c_str());
qDebug() << " with type_id: " << (call->typeId-1) ;
calls.append(call);
soap_unlink(request.soap, call);
}
РЕДАКТИРОВАТЬ
nvm, вам необходимо отменить связь всех отдельных значений объекта
следующим образом:
soap_unlink(response.soap, call->roomId);
soap_unlink(response.soap, call->display);
soap_unlink(response.soap, call->location);
soap_unlink(response.soap, call->staffAidId);
soap_unlink(response.soap, call->firstName);
soap_unlink(response.soap, call->lastName);
нет ли более легкого пути?