Ошибка с веб-сервисом в android. Ссылка на объект не установлена на истанцию объекта
Привет, ребята, этот вопрос может быть немного длинным. Я попытался создать метод для использования этого веб-сервиса, однако получил ошибку. Я могу использовать другие веб-сервисы нормально, но я их не создавал(метод на android), я довольно новый, поэтому мне нужна помощь.
W/System. err: SoapFault-faultcode: 'soap:Server' faultstring: 'сервер не смог обработать запрос. - - - & gt; Ссылка на объект не установлена на экземпляр объекта.' faultactor:' null ' detail: org.kxml2.kdom.Узел@107d094
Ж/Системы.ошибка: при орг.ksoap2.сериализации.SoapSerializationEnvelope.parseBody(SoapSerializationEnvelope.Ява:147)
Ж/Системы.ошибка: при орг.ksoap2.SoapEnvelope.синтаксический анализ(SoapEnvelope.Ява:140)
Ж/Системы.ошибка: при орг.ksoap2.транспорт.Transport.parseResponse(Transport. java:118)
Ж/Системы.ошибка: при орг.ksoap2.транспорт.HttpTransportSE.вызов(HttpTransportSE.Ява:275)
Ж/Системы.ошибка: при орг.ksoap2.транспорт.HttpTransportSE.вызов(HttpTransportSE.Ява:118)
Ж/Системы.ошибка: при орг.ksoap2.транспорт.HttpTransportSE.вызов(HttpTransportSE.Ява:113)
Ж/Системы.ошибка: при орг.tempuri.WsCambioCotacaoSoap.validateCoupon(WsCambioCotacaoSoap. java:1004)
Ж/Системы.ошибка: на ком.rendimento.cotacao.дома.сайту onlinestore.оплаты.PurchaseDetailsActivity$1. run(PurchaseDetailsActivity. java:235)
Ж/Системы.ошибка: в Java.яз.Нить.выполнения(резьба.Ява:761)
// строка 1004: _ht. call("http://tempuri.org/ValidateCoupon", _envelope);
Вот и вся информация, которую я получил. Я глубоко сожалею о очень-очень длинном вопросе, но мне действительно нужна здесь некоторая помощь. Я новичок, я даже не знаю, с чего начать, я создал этот метод на основе другого метода веб-сервиса, который уже был создан(мой руководитель сказал мне это сделать), я не могу попросить его о помощи, потому что он сказал, что ничего не знает об android, так что мне придется немного погуглить. Кто-нибудь может мне помочь, пожалуйста?
Что я уже пробовал:
Я попытался вызвать веб-сервис более простым способом, но он просто выводит приложение из строя, по крайней мере, это заставит приложение работать. (Мой руководитель сказал мне сделать этот метод на основе другого созданного)
Richard MacCutchan
Скорее всего, переменная _envelope
является нулевым. Проверьте журналы Android studio или используйте adb для получения дополнительной информации.
Member 12883247
Привет, Ричард, спасибо за ответ. Следуя за сугестионом Гриффа, я использовал отладчик и проверил _envelope, как вы упомянули, и получил следующее: _envelope = {SoapSerializationEnvelope@4836}
_envelope.bodyOut = {SoapObject@4835}
_envelope.органом = нуль
_ht. responseDump = & lt;soap:envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:body><soap:fault><faultcode>soap:Server<faultstring>сервер не смог обработать запрос. - - - & gt; Ссылка на объект не установлена на экземпляр объекта. & lt;detail>
Richard MacCutchan
К сожалению, это все еще не говорит нам, какой объект является нулевым. Вам нужно глубже изучить все объекты и их свойства, на которые ссылаются.
Member 12883247
Ладно, Ричард, понял. Спасибо Вам за вашу помощь :)