I just solved this problem of listing through a marshal.
I created the Java-Enum by copying .net. Then I wrote a marshal class for him:
public class MarshalEnum implements org.ksoap2.serialization.Marshal { ...
Then, when calling the method, where MyEnum values will be sent:
//... blah blah SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); envelope.addMapping(SOAP_REMOTE_NAMESPACE, "MyEnum", MyEnum.class, MarshalEnum.getInstance()); //... and so on.
Note that SOAP_REMOTE_NAMESPACE is the data contract namespace for the enumeration to be used! See the wsdl file to find out if you are not sure. It should look something like this: "http://schemas.datacontract.org/2009/08/Your.dotNet.Namespace".
I hope this works for you too.
Fildor
source share