我想在肥皂体的根 SoapObject 中放置一个值。
<envelope>
<body>
<request>34</request>
</body>
</envelope>
有没有办法设置 SoapObject 的值我不能改变服务器端它必须是这种格式。或者是否可以将输出对象设置为属性?
我迷路了,即将从头开始构建它并此时通过http发送它。
我发现这样做的唯一方法是编写一个简单的类,它扩展SoapPrimitive
和实现KvmSerializable
. 它看起来像这样:
class CustomProperty extends SoapPrimitive implements KvmSerializable
{
public CustomProperty(String namespace, String name, String value)
{
super(namespace, name, value);
}
@Override
public Object getProperty(int index)
{
return this.toString();
}
@Override
public int getPropertyCount()
{
return 1;
}
@Override
public void setProperty(int index, Object value)
{
}
@Override
public void getPropertyInfo(int index, Hashtable properties, PropertyInfo info)
{
info.setValue(toString());
info.setName(getName());
info.setNamespace(getNamespace());
}
}
使用:
envelope.setOutputSoapObject(new CustomProperty(null, "request", "34"));