ksoap2 を使用して、内部に空のリストを持つオブジェクト グループを作成したいと考えています。Webserviceメソッドを使用してスタンドアロン アプリケーションでこれを行うことができましたが、Android を使用するとエラーjava.lang.RuntimeException: Cannot serialize: []
が発生します。
ここに私のWSDL
xmlがあります:
<xs:complexType name="createGroup">
<xs:sequence>
<xs:element name="new-group-object" type="tns:group" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="group">
<xs:sequence>
<xs:element name="groupId" type="xs:long"/>
<xs:element name="groupName" type="xs:string" minOccurs="0"/>
<xs:element name="users" type="tns:user" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="user">
<xs:sequence>
<xs:element name="latitude" type="xs:double"/>
<xs:element name="longitude" type="xs:double"/>
<xs:element name="userAge" type="xs:int"/>
<xs:element name="userId" type="xs:long"/>
<xs:element name="userName" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
そして私のAndroidクライアントメソッド:
public void createGroupServ(String groupName)
{
request = new SoapObject(NAMESPACE, "createGroup");
SoapObject soapGroup = new SoapObject(NAMESPACE, "group");
Group gr = new Group();
gr.setGroupName(groupName);
gr.setUsers(new ArrayList<User>());
request.addProperty("new-group-object", gr);
envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet = false;
envelope.setOutputSoapObject(request);
androidHttpTransport = new HttpTransportSE(URL);
androidHttpTransport.debug = true;
...
}