【发布时间】:2011-04-13 11:47:07
【问题描述】:
我在我的代码中使用 asmx Web 服务,它没有返回正确的 XML 文件。这是我的代码
private static final String SOAP_ACTION = "http://tempuri.org/ValidateLogin";
private static final String METHOD_NAME = "ValidateLogin" ;
private static final String NAMESPACE = "http://tempuri.org/";
private static final String URL = "http://ufindfish.b4live.com/FindFish.asmx";
request= new SoapObject(NAMESPACE,METHOD_NAME);
request.addProperty("sUserName",name);
request.addProperty("sPwd", password);
//envelope.bodyOut=request;
envelope=new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet=true;
envelope.setOutputSoapObject(request);
envelope.encodingStyle=SoapSerializationEnvelope.XSD;
//generate httpresponce
httpTransportSE=new HttpTransportSE(URL);
try {
httpTransportSE.call(SOAP_ACTION,envelope);
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (XmlPullParserException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
SoapObject result = null;
try {
result=(SoapObject)envelope.getResponse();
//Log.i("RESPONCE",""+result.toString());
} catch (SoapFault e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
回复如下……我该怎么办?
anyType{NearLake=anyType{tblNearLake=anyType{LAKE=2022C01 BENSFORT BRIDGE to PETERBOROUGH; LAT=11.622; LON=20.616; }; tblNearLake=anyType{LAKE=2022C01 BENSFORT BRIDGE to PETERBOROUGH; LAT=11.186; LON=19.443; }; }; }
请帮帮我...
提前致谢
【问题讨论】:
-
您如何检查结果不正确?检查时不能依赖 toString() 方法的结果!
-
@Olegas 结果还可以......但它没有给我正确的 xml 文件来解析它。
-
你是如何解析它的?为什么要单独解析它?它不是已经被您的 SOAP 库解析了吗?
-
我不知道库是否已经解析它...bt 不管我到目前为止读过什么,我得到的信息是你得到了 xml 文件,你会根据你的需要进行解析......你有使用了这个服务 b4?你得到 xml 文件了吗?
-
不,我没有在 Android 中使用过 SOAP,但我知道 SOAP 是一种 RPC 协议,可以进行调用并接收强类型的答案。您使用的是什么 SOAP 库?