1:实体类SQueEnt
public class SQueEntimplements KvmSerializable {
// 标题,内容,类型数组
private String lblText;
private String txtText;
private String Type;
public SQueEnt(){}
public SQueEnt(String lblText, String txtText, String Type) {
this.lblText = lblText;
this.txtText = txtText;
this.Type = Type;
}
@Override
public Object getProperty(int arg0) {
switch (arg0) {
case 0:
return lblText;
case 1:
return txtText;
case 2:
return Type;
}
return null;
}
@Override
public int getPropertyCount() {
return 3;
}
@Override
public void getPropertyInfo(int arg0, Hashtable arg1, PropertyInfoarg2) {
// arg2.namespace =WebService.NAMESPACE;
switch (arg0) {
case 0:
arg2.type = PropertyInfo.STRING_CLASS;
arg2.name = "lblText";
break;
case 1:
arg2.type = PropertyInfo.STRING_CLASS;
arg2.name = "txtText";
break;
case 2:
arg2.type = PropertyInfo.STRING_CLASS;
arg2.name = "Type";
break;
default:
break;
}
}
@Override
public void setProperty(int arg0, Object arg1) {
switch (arg0) {
case 0:
lblText = arg1.toString();
case 1:
txtText = arg1.toString();
case 2:
Type = arg1.toString();
}
}
}
2:实体数组ArrayOfSQueEnt
public class ArrayOfSQueEnt extends Vector
private static final long serialVersionUID = -1166006770093411055L;
@Override
public Object getProperty(int arg0) {
return this.get(arg0);
}
@Override
public int getPropertyCount() {
return this.size();
}
@Override
public void getPropertyInfo(int arg0, Hashtable arg1, PropertyInfoarg2) {
arg2.name = "SQueEnt";
arg2.type = SQueEnt.class;
}
@Override
public void setProperty(int arg0, Object arg1) {
this.add((SQueEnt)arg1);
}
}
3:webservices上传
public void fillTable(String id) {
String method = "fillTableByID";
SQueEnt sqe = new SQueEnt("磁带编号,并列正题名", "后台测试", "nvarchar(50)");
ArrayOfSQueEnt sci = new ArrayOfSQueEnt();
sci.add(sqe);
sci.add(sqe);
SoapObject request = new SoapObject(NAMESPACE, method);
PropertyInfo tabProp1 = new PropertyInfo();
tabProp1.setName("sqecol");
tabProp1.setValue(sci);
tabProp1.setType(ArrayOfSQueEnt.class);
request.addProperty(tabProp1);
// String id="179d570d-5da3-40ac-a7ba-e72c02c38b4c";
// request.addProperty("sqecol",array);
String type = getFiletype(id);
request.addProperty("xbType", type);
request.addProperty("Fileid", id);
//System.out.println(type +" :" + id);
envelope.addMapping(NAMESPACE, "sqecol",
new ArrayOfSQueEnt().getClass());
envelope.addMapping(NAMESPACE, "SQueEnt", new SQueEnt().getClass());
envelope.bodyOut = request;
envelope.dotNet = true;
envelope.setOutputSoapObject(request);
envelope.encodingStyle = "UTF-8";
HttpTransportSE androidHttpTransport = new HttpTransportSE(URLQuery);
androidHttpTransport.debug = true;
try {
androidHttpTransport.call(NAMESPACE + method, envelope);
if (envelope.bodyIn != null) {
Object resultObj = (Object) envelope.bodyIn;
System.out.println(envelope.bodyIn.toString());
} else {
System.out.println("WebServicefillTable()没有获取到数据!");
}
} catch (IOException e) {
System.out.println(e);
e.printStackTrace();
} catch (XmlPullParserException e) {
System.out.println(e);
e.printStackTrace();
}
}