jar下载地址:http://download.csdn.net/detail/proud2005/5817383
public static void main(String[] args) {
Map<String, String> map = new HashMap<String, String>();
map.put("carNo", "908");
map.put("pwd", "1");
try {
System.out.println(parseSoap("getLoginCar", map, 0));
} catch (SocketTimeoutException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (XmlPullParserException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
private static void printSyso(Object str) {
System.out.println(str);
}
/**
* @param methodname
* actionName 方法名
* @param para
* 参数列表
* @param timeOut
* 连接超时时间 单位 毫秒<Br>
* 不超时0
* @return 服务器返回的第一个属性值
* @throws IOException
* @throws XmlPullParserException
* @throws SocketTimeoutException
* 超时时抛出的异常
*/
private static String parseSoap(String methodname,
Map<String, String> para, int timeOut) throws IOException,
XmlPullParserException, SocketTimeoutException {
HttpTransportSE ht = new HttpTransportSE(SERVICE_URL, timeOut);
SoapSerializationEnvelope se = new SoapSerializationEnvelope(
SoapEnvelope.VER11);
SoapObject so = new SoapObject(SERVICE_NS, methodname);
if (para != null) {
for (String str : para.keySet()) {
so.addProperty(str, para.get(str));
}
}
se.bodyOut = so;
se.dotNet = true;
ht.call(SERVICE_NS + methodname, se);
StringBuffer sb = new StringBuffer();
if (se.getResponse() != null) {
SoapObject sor = (SoapObject) se.bodyIn;
printSyso(sor);
Object or = sor.getProperty(0);
printSyso(or);
sb.append(or);
}
return sb.toString();
}