我与我的 Web 服务 (SOAP) 连接,这是我从 Web 服务收到的 xml 结果,如何在没有 SAX 解析器的情况下解析此结果...
<maintag>
<item>
<name>AndroidPeople</name>
<website category="android">www.androidpeople.com</website>
</item>
<item>
<name>iPhoneAppDeveloper</name>
<website category="iPhone">www.iphone-app-developer.com</website>
</item>
</maintag>
编辑:/我想用 Kxmlparser 解析这个结果,有人能告诉我怎么做吗?
非常感谢!
肥皂文件
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
tv = (TextView)findViewById(R.id.TextView01);
// Maak een nieuw Soap Request object en parameter
SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);
request.addProperty("GUID","4fe78-a4s4df8-65a4sd-465as4a");
request.addProperty("InstallVersion","1");
// Soapenvelope versie van webservice
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet = true;
envelope.encodingStyle = SoapSerializationEnvelope.XSD;
envelope.setOutputSoapObject(request);
// Transport gegevens vanaf URL
HttpTransportSE aht = new HttpTransportSE(URL);
try
{
aht.call(SOAP_ACTION, envelope);
SoapPrimitive resultsString = (SoapPrimitive)envelope.getResponse();
tv.setText("Result :" + resultsString);
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
根据您的 Web 服务,您收到的响应将是 SoapPrimitive 或 SoapObject。最喜欢的是一个更复杂的响应,因此你的代码
SoapPrimitive resultsString = (SoapPrimitive)envelope.getResponse();
应该用这样的东西代替
SoapObject response = (SoapObject)envelope.getResponse();
反过来,它又具有包含您响应中的值的属性和属性。最简单的方法可能是在那里设置一个断点并实时检查它。
您还可以在此处查看我的 wiki 文档,了解如何调试并查看原始 xml 请求和响应:http://code.google.com/p/ksoap2-android/wiki/CodingTipsAndTricks http://code.google.com/p/ksoap2-android/wiki/CodingTipsAndTricks
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)