Ksoap вызывает Webservice - проблема с SoapObject - PullRequest
0 голосов
/ 20 июня 2011

Я пытаюсь вызвать WSDL Webservice через Ksoap для моего приложения для Android. Когда я использую SoapPrimitive, это работает, и я получаю следующую строку:

{"INGREDIENTS": [
    {
        "TEXT": "ohne Schweinefleisch",
        "KEY": "*"
    },
    {
        "TEXT": "mit Alkohol",
        "KEY": "11"
    },

......

и т. Д. Я хотел бы иметь только «Текст» в ListView, но я не знаю, как я могу это реализовать с помощью SoapPrimitive.

И когда я использую SoapObject, я получаю только следующее исключение:

"java.lang.ClassCastException: org.ksoap2.serialization.SoapPrimitive cannot be cast to org.ksoap2.serialization.SoapObject"

Вот мой код:

 try {

        SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);

        SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
        envelope.dotNet=true;
        envelope.setOutputSoapObject(request);

        HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
        androidHttpTransport.debug = true;
        androidHttpTransport.call(SOAP_ACTION, envelope);

        SoapObject response = (SoapObject)envelope.getResponse();
        }

Что не так? Я много часов искал в Интернете, но не нашел ответа.

1 Ответ

2 голосов
/ 20 июня 2011

Ваш ответ выглядит как JSONArray из JSONObject с. Вы можете разобрать его с помощью встроенной библиотеки json или используйте гсон .

...