2011-12-12 37 views
1

我一直在使用Android的KSOAP發送包含6個元素的SOAP請求,最後一個元素是一個值數組。這裏的代碼...KSOAP元素的排序

 PropertyInfo properties[] = new PropertyInfo[numberOfProperties]; 
     properties[0] = new UserLogin("user2"); 
     properties[1] = new UserPassword("u2"); 
     properties[2] = new MAC_ID("00:01:02:03:04:05"); 
     properties[3] = new StartMeasurement(mStartTime); 
     properties[4] = new StopMeasurement(mStopTime); 

     SoapObject soapObjectRequest = new SoapObject(ROOT_NAMESPACE, mSoapMethodName); 

     for(int i=0;i< properties.length;i++) 
     soapObjectRequest.addProperty(properties[i]); 

     SoapObject eventList = new SoapObject(ROOT_NAMESPACE, "eventValues"); 

     SoapObject eventValues = new SoapObject(TYPE_NAMESPACE, "EventValues"); 

     eventValues.addProperty(9.9); 

     eventValues.addProperty(101.1); 

     eventList.addSoapObject(eventValues); 

     soapObjectRequest.addSoapObject(eventList); 

一切工作正常的請求,酒吧的順序。當我調用addSoapObject時,它首先將數組值放入正文請求中。因此eventValues元素內的所有內容都出現在請求的頂部。它應該是請求成功的最後一個元素。所有其他屬性元素的順序都是正確的。

是否有某種方式可以決定訂購KSOAP?我使用的是2.6.0版本。

任何建議表示讚賞!

+0

你在做什麼?我不明白,你的問題是什麼? –

回答