【发布时间】:2012-09-07 22:48:21
【问题描述】:
以下是我编写的代码,用于验证用户登录凭据。使用 .net 编写的 Web 服务
private static final String SOAP_ACTION = "http://tempuri.org/getCredentials";
private static final String OPERATION_NAME = "getCredentials";
private static final String WSDL_TARGET_NAMESPACE = "http://tempuri.org/";
private static final String SOAP_ADDRESS = "http://myStaticIP:portNo/WebSiteName/CommunicationInterface.asmx";
SoapObject request = new SoapObject(WSDL_TARGET_NAMESPACE, OPERATION_NAME);
request.addProperty("username",Username);
request.addProperty("password", Password);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet = true;
envelope.setOutputSoapObject(request);
HttpTransportSE httptransport = new HttpTransportSE(SOAP_ADDRESS);
try
{
httptransport.call(SOAP_ACTION, envelope);
SoapPrimitive result = (SoapPrimitive) envelope.getResponse();
String value = result.toString();
value_LoginWS = value;
val = value;
login_status = Boolean.valueOf(result.toString());
Log.v("CS return value: -", result.toString());
return value;
}
catch (Exception e)
{
Log.v("Exception Soap" , e.toString());
}
在线"httptransport.call(SOAP_ACTION, envelope)"
我得到exception 说
"org.xmlpull.v1.XmlPullParserException: expected: START_TAG {http://schemas.xmlsoap.org/soap/envelope/}Envelope (position:START_TAG <html>
@1:7 in java.io.InputStreamReader@41afb3f0)" <br/><br/>
我不知道错误是什么。这段代码非常适合模拟器(更改 staticIP to 10.0.2.2:portNo)。
请帮我解决这个问题。
谢谢。
【问题讨论】:
-
@zapl:你说那个朋友是什么意思.....
-
我有同样的错误,发现它与我的代码无关。如果您在模拟器上运行,请重新启动您的工作环境并重试。您可能需要重复几次,但它最终对我有用!
标签: java android asp.net ksoap2 android-ksoap2