SOAP validateUser не работает - PullRequest
       0

SOAP validateUser не работает

0 голосов
/ 07 сентября 2011

Я пытаюсь использовать SOAP 2.4 для проверки имени пользователя и пароля с помощью Android.Я получаю ответ от сервера, я могу подтвердить это, так как сервер MySQL подтвердил, что мое приложение отправило запрос.Однако, как вы можете видеть ниже, я передаю два параметра, используя метод addProperty ().Сервер MySQL видит запрос, но значения являются нулевыми.В результате я получаю ответ «неверное имя пользователя или пароль», однако имя пользователя и пароль, которые я жестко запрограммировал, определенно находятся в базе данных.Я правильно передаю параметры?

else {

        SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME); // set
                                                                        // up
                                                                        // request

        request.addProperty("User", "raji"); // variable name, value. I got
                                                // the variable name, from
                                                // the wsdl file!
        request.addProperty("Password", "PASSWORD");

        SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
                SoapEnvelope.VER11); // put all required data into a soap
                                        // envelope
        envelope.setOutputSoapObject(request); // prepare request
        AndroidHttpTransport httpTransport = new AndroidHttpTransport(URL);
        httpTransport.debug = true;
        httpTransport.call(SOAP_ACTION, envelope); // send request

        SoapObject result = (SoapObject) envelope.getResponse();            System.out.println(result);


    }

Вот файл SOAP XML

             <s:element name="ValidateUser">
              - <s:complexType>
             - <s:sequence>
               <s:element minOccurs="0" maxOccurs="1" name="User" type="s:string" /> 
                <s:element minOccurs="0" maxOccurs="1" name="Password" type="s:string" /> 
                   </s:sequence>
               </s:complexType>
                     </s:element>

1 Ответ

0 голосов
/ 20 сентября 2011

код решения здесь. Я не добавил .net код

SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME); // set
        request.addProperty("User", sUserName); // variable name, value. I
                                                // got
        request.addProperty("Password", sPassword);

        SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
                SoapEnvelope.VER11); // put all required data into a soap
        // envelope
        envelope.dotNet = true;
        envelope.setOutputSoapObject(request); // prepare request
        AndroidHttpTransport httpTransport = new AndroidHttpTransport(URL);
        httpTransport.debug = true;
        httpTransport.call(SOAP_ACTION, envelope); // send request

        System.out.println("HERE IS THE ENVELOPE "
                + envelope.getInfo("User", "Password"));
        SoapObject result = (SoapObject) envelope.getResponse();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...