2012-02-02 5 views
1

Мое приложение вызывает wcf service.but it un suscess. Я хотел бы реализовать метод аутентификации, который отправляет имя пользователя и пароль на сервер, а сервер отправляет ответ, но он не работает. Вот logdebug:Не удается аутентифицировать службу wcf в android

org.xmlpull.v1.XmlPullParserException: unexpected type (position:END_DOCUMENT [email protected]:0 in [email protected]) 

Код проверки Аутентифицировать:

public override void Validate(string userName, string password) 
    { 
    if (userName == null || password == null) 
    { 
     throw new ArgumentNullException(); 
    }  
     Account account = new Account(); 
     bool success = account.Login(userName, password);  
     LogSystem log = new LogSystem(); 
     log.LogToFile(userName + ":" + password); 

     bool success = (userName == "admin" && password == "admin"); 
     if (!success) 
     { 
      throw new FaultException("wrong user or pass"); 
      } 
    } 

Здесь mycode клиент:

try { 
    SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);   
    SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
                 SoapEnvelope.VER10); 
    envelope.dotNet = true; 

    Element userName = new Element().createElement(NAMESPACE, "userName"); 
    userName.addChild(Node.TEXT, "admin"); 
    userName.setNamespace(NAMESPACE); 
    Element password = new Element().createElement(NAMESPACE, "password"); 
    password.addChild(Node.TEXT, "admin"); 
    password.setNamespace(NAMESPACE); 

    envelope.headerOut = new Element[2]; 
    envelope.headerOut[0] = userName; 
    envelope.headerOut[1] = password; 

    envelope.setOutputSoapObject(request); 
    HttpTransportSE androidHttpTransport = new HttpTransportSE(URL); 
    androidHttpTransport.debug = true; 

    androidHttpTransport.call(SOAP_ACTION, envelope); 

    String xmlString = envelope.getResponse().toString(); 
    Log.e("NewWS", " " + xmlString); 
    tv1.setText(androidHttpTransport.requestDump); 
    } catch (Exception E) { 
     E.printStackTrace(); 

} 

Я не знаю bescaus это. Я пробовал how to set soap Header using ksoap2 - android, но это не работает для меня. , пожалуйста, помогите мне. Большое спасибо.

ответ

Смежные вопросы