Enviar Objeto como parametro para WS KSOAP2 [Android]

Boa Tarde, Pessoal

Estou tentando enviar um objeto como parametro para meu WS, mas estou recebendo a seguinte exception…

org.xmlpull.v1.XmlPullParserException: unexpected type (position:END_DOCUMENT null@1:0 in java.io.InputStreamReader@44e75e98)

minha classe q acessa o WS

[code]package br.com.sky.persistencia;

import java.util.ArrayList;
import java.util.List;

import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;
import br.com.sky.modelo.Materias;
import br.com.sky.modelo.ParametrosMateria;

public class ListarMateriasWS {
private static final String SOAP_ACTION =“http://tempuri.org/IService1/ListarMaterias”;
private static final String METHOD_NAME =“ListarMaterias”;
private static final String NAMESPACE=“http://tempuri.org/”;
private static final String URL=“http://192.168.1.172/Service1.svc”;

List<Materias>listaMaterias =new ArrayList<Materias>();
SoapObject result;


public List<Materias> listarMaterias(ParametrosMateria parametros){		
	SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);		
	request.addProperty("ParametrosMateria", parametros);
	request.addProperty("token", "");
	SoapSerializationEnvelope envelope =new SoapSerializationEnvelope(SoapEnvelope.VER11);
	envelope.dotNet=true;
	envelope.setOutputSoapObject(request);	
	envelope.addMapping(NAMESPACE, ParametrosMateria.class.getSimpleName(), ParametrosMateria.class);
	try{
		HttpTransportSE androidHttpTranport = new HttpTransportSE(URL);
		androidHttpTranport.call(SOAP_ACTION, envelope);
		result 	= (SoapObject)envelope.getResponse();
		
		if(result != null){
			for (int i = 0; i < result.getPropertyCount(); i++) {
				listaMaterias.add(new Materias((SoapObject)result.getProperty(i)));
			}
		}
		
	}catch (Exception e) {
		// TODO: handle exception
		e.printStackTrace();
	}
	return listaMaterias;
}

}
[/code]

Alguém pode dar uma ajuda??

Obrigado

Já tive problemas com a KSOAP e tipos complexos, como eu era o desenvolvedor do webservice também preferi trabalhar com JSON para encapsular esses objetos, mas sei q existe maneiras, apesar de um pouco mais trabalhosas

Boa tarde.

Isso com ctz vai te ajudar.

http://seesharpgears.blogspot.com.br/2010/10/ksoap-android-web-service-tutorial-with.html

Cara,

Desculpa a demora…estou fazendo varias coisas ao mesmo tempo… ta complicado.

Olho esse ex. sempre q necessario, a dúvida é o senguinte, consigo enviar um objeto de um tipo e o Web Service me devolver outro?

Ex. Mandar Obj Pessoa e receber um Obj Carro…???

Obrigado

Executando o código acima…

Estou recebendo a seguinte exceção…

.XmlPullParserException

[code]try{
HttpTransportSE androidHttpTranport = new HttpTransportSE(URL);
//É aqui q esta dando exception
androidHttpTranport.call(SOAP_ACTION, envelope);
result = (SoapObject)envelope.getResponse();

		if(result != null){
			for (int i = 0; i < result.getPropertyCount(); i++) {
				listaMaterias.add(new Materias((SoapObject)result.getProperty(i)));
			}
		}
		
	}catch (Exception e) {
		// TODO: handle exception
		e.printStackTrace();
	}[/code]

Alguém sabe o Motivo?

Abraços

Olá amigo estou com o mesmo problema que o senhor enfrento.

Teria como dar uma ajuda?