2011-04-29 127 views
0
package com.demowold; 

import android.app.Activity; 

import android.os.Bundle; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.TextView; 

import org.ksoap2.SoapEnvelope; 
import org.ksoap2.serialization.SoapObject; 
import org.ksoap2.serialization.SoapSerializationEnvelope; 
import org.ksoap2.transport.HttpTransportSE; 

public class DemoWold extends Activity { 

private EditText etUserName; 
private TextView lblResult; 
/** Called when the activity is first created. */ 

private static final String NAMESPACE = "http://tempuri.org"; 
private static final String METHOD_NAME = "Hello"; 
private static final String SOAP_ACTION = "Hello"; 
private static final String URL = "http://ip/foldername/UserAuthenticationService.svc?wsdl"; 


@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 


    lblResult = (TextView) findViewById(R.id.lblmsg); 
    etUserName = (EditText)findViewById(R.id.etUserName); 

     call(); 

} 

public void call() 
{ 
     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; 
     try 
     { 
      androidHttpTransport.call(SOAP_ACTION, envelope); 
      lblResult.setText(envelope.getResponse().toString()); 
     } 
     catch(org.xmlpull.v1.XmlPullParserException ex2) 
     {  
      lblResult.setText(androidHttpTransport.requestDump.toString());   
      System.out.println(androidHttpTransport.requestDump.toString()); 

     }  

      } catch (Exception e) { 

     lblResult.setText(e.toString()); 
    } 
} 
} 

我得到错误:Android网络服务问题

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

请帮助我。代码有什么问题

+2

你解决了吗?如果是这样,发布如何,我面临同样的问题 – kinghomer 2012-06-22 11:20:38

回答

0

我认为你的网址:http://ip/foldername/UserAuthenticationService.svc?wsdl可能是问题所在。尝试http://ip/foldername/UserAuthenticationService.svc(假设ip和文件夹名称将被真实的替换!)

如果它不起作用,你可以在请求后发布什么androidHttpTransport.responseDump

+0

嗨,感谢您的重播。对于androidHttpTransport.responseDump返回空。我尝试了与wsdl同样的结果。 – Rajaneesh 2011-05-02 04:32:07

0

METHOD_NAME和SOAP_ACTION不应该是相同的。 SOAP_ACTION应该是名称空间和方法名称的串联。你的情况是“http://tempuri.org/Hello”。另外,这很重要,请在NAMESPACE末尾加上斜杠。不幸的是,这是ksoap2初学者的常见问题。

虽然您收到的错误似乎并不真正与他们有关。

当你检查responseDump时,你在哪里放置了断点?