CISCO MSE API:与Android应用程序的SOAP通信
我想知道如何在android源代码中应用SOAP请求参数 例如CISCO MSE API:与Android应用程序的SOAP通信,android,soap,cisco,ksoap,Android,Soap,Cisco,Ksoap,我想知道如何在android源代码中应用SOAP请求参数 例如 问题1。是这样吗?(SOAP\u ACTION-您可以在wsdl中看到它,可能是这样的:”http://cisco/mse/location/GetStationStats“。 方法\u名称和名称空间似乎是正确的。 URL-服务URL,我不知道它是否正确。您也可以在wsdl中看到它 request.addProperty("AesBusinessSession id" ,10510); request.addProperty("Ae
问题1。是这样吗?(
SOAP\u ACTION
-您可以在wsdl中看到它,可能是这样的:”http://cisco/mse/location/GetStationStats“
。
方法\u名称
和名称空间
似乎是正确的。
URL
-服务URL,我不知道它是否正确。您也可以在wsdl中看到它
request.addProperty("AesBusinessSession id" ,10510);
request.addProperty("AesMobileStation macAddress" ,00:01:02:03:04:05);
这是错误的(输出类似于:10510
)。
您可以使用SoapObject
或SoapPrimitive
添加属性:
SoapObject request=new SoapObject(NAMESPACE, METHOD_NAME);
SoapObject aesBusinessSession = new SoapObject(NAMESPACE, "AesBusinessSession");
aesBusinessSession.addAttribute("id",10510);
SoapObject aesBaseStats = new SoapObject(NAMESPACE, "AesBaseStats");
...//add attrs to aesBaseStats
request.addSoapObject(aesBusinessSession);
request.addSoapObject(aesBaseStats);
谢谢你的建议。但是,我不能打电话给addSoapObject。
request.addProperty("AesBusinessSession id" ,10510); <-- Is this right?
request.addProperty("AesMobileStation macAddress" ,00:01:02:03:04:05); <-- Is this right?
private void soapData(String searchData) {
SoapObject request=new SoapObject(NAMESPACE, METHOD_NAME);
Log.e("dd", "Soap Created");
SoapSerializationEnvelope envelope=new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet=true;
envelope.setOutputSoapObject(request);
request.addProperty("SQL" ,searchData);
HttpTransportSE androidHttpTransport=new HttpTransportSE(URL);
androidHttpTransport.debug = true;
try
{
androidHttpTransport.call(SOAP_ACTION, envelope);
SoapPrimitive result = (SoapPrimitive)envelope.getResponse(); //String result1 = xmlPasing(result.toString()); //xml파싱
String re_xml = result.toString();
outPut.setText(re_xml); //결과값 출력
}
catch(Exception e)
{
Log.e("dd", "Soap Catch",e);
e.printStackTrace();
} //try-catch
}
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
<GetStationStats xmlns=” http://cisco.com/mse/location”>
<AesBusinessSession id="10510"/>
<AesMobileStation macAddress="00:01:02:03:04:05"/>
</GetStationStats>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
<Response xmlns=” http://cisco.com/mse/location”>
<AesBaseStats macAddress="00:01:02:03:04:05" packetsSent=”12” bytesSent=”1221111” packetsRecv=”1111” bytesRecv=”1212204” policyErrors=”0” changedOn=”1220324324”/>
</Response>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
request.addProperty("AesBusinessSession id" ,10510);
request.addProperty("AesMobileStation macAddress" ,00:01:02:03:04:05);
SoapObject request=new SoapObject(NAMESPACE, METHOD_NAME);
SoapObject aesBusinessSession = new SoapObject(NAMESPACE, "AesBusinessSession");
aesBusinessSession.addAttribute("id",10510);
SoapObject aesBaseStats = new SoapObject(NAMESPACE, "AesBaseStats");
...//add attrs to aesBaseStats
request.addSoapObject(aesBusinessSession);
request.addSoapObject(aesBaseStats);