Foros del Web » Programando para Internet » Android »

WCF - Android - Ksoap2 - Enviar objeto a metodo del WCF (Funciona a medias)

Estas en el tema de WCF - Android - Ksoap2 - Enviar objeto a metodo del WCF (Funciona a medias) en el foro de Android en Foros del Web. Buenas noches desde España Foreros. Tengo un WCF Service que tiene un método, que recibe como parametro un objeto, el cual luego devuelve otra vez. ...
  #1 (permalink)  
Antiguo 11/01/2012, 15:41
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 10 meses
Puntos: 7
WCF - Android - Ksoap2 - Enviar objeto a metodo del WCF (Funciona a medias)

Buenas noches desde España Foreros.

Tengo un WCF Service que tiene un método, que recibe como parametro un objeto, el cual luego devuelve otra vez.

La llamada desde mi Android es satisfactoria, recibo el objeto correctamente en mi cliente Android.

Sin embargo, a la hora de hacer la llamada al metodo, yo mando este mismo objeto a mi metodo en el WCF, cuyo cuerpo es el siguiente:

Código:
        public CompositeType GetDataUsingDataContract(CompositeType composite)
        {

            if (composite == null)
            {
                throw new ArgumentNullException("composite");
            }
            

            composite.SringValue="miValor";
            if (composite.BoolValue)
            {
                composite.StringValue += "Suffix";
            }
            return composite;
        }
Ok, desde mi cliente Android, recibo el objeto correctamente. Pero, yo estoy mandando desde Android el parametro, con la propiedad BoolValue a true, para recibir en la propiedad StringValue el valor Suffix agregado.

Pero no, parece ser que los valores que establezco en mi Android no son recibidos en mi servicio, aun que si que es capaz de Deserializar el objeto, ya que sino, no me llegaría a cliente otra vez el objeto.

¿Saben que puede ser lo que esté haciendo mal?
Desde Android hago esto:

Código:
	        	SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);
	        	
	        	//*** PROPIEDAD *** DEBERIA COGER EL TRUE EN EL WCF...
	        	CompositeType objComposite = new CompositeType();
	        	objComposite.setProperty(0, true);
	        	objComposite.setProperty(1, "Probando");
	        	
	        	//*** la agrego a la peticion ***
	        	PropertyInfo objParameter = new PropertyInfo();
	        	objParameter.setName("composite");
	        	objParameter.setValue(objComposite);
	        	objParameter.setType(CompositeType.class);
	        		        	
	        	request.addProperty(objParameter);
	        	
	        	
	        	SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
	        	envelope.dotNet = true;
	        	envelope.setOutputSoapObject(request);
	        	envelope.addMapping(NAMESPACE_CONTRACT, "CompositeType", CompositeType.class);
	        	
	        	
	        	HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);	        	
	        	androidHttpTransport.call(SOAP_ACTION, envelope);

                        //Recibo el objeto de WCF correctamente
	        	SoapObject response = (SoapObject)envelope.getResponse();
En fin, espero que alguien que esté familiarizado con esto, pueda hecharme un cable. Desde ya, muchas gracias.
__________________
Charlie.
  #2 (permalink)  
Antiguo 13/01/2012, 06:36
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 10 meses
Puntos: 7
Respuesta: WCF - Android - Ksoap2 - Enviar objeto a metodo del WCF (Funciona a medias

Por favor, agradeceré cualquier sugerencia y ayuda.
__________________
Charlie.
  #3 (permalink)  
Antiguo 27/01/2012, 04:29
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 10 meses
Puntos: 7
Respuesta: WCF - Android - Ksoap2 - Enviar objeto a metodo del WCF (Funciona a medias

Joder... ¿Nadie puede ayudarme sobre este tema?? Saben si al WCF puedo meterle que acepte más esquemas??? Así metería los esquemas que estoy enviando desde mi cliente Android, no sé... alguna solución habrá, no??
__________________
Charlie.
  #4 (permalink)  
Antiguo 18/04/2014, 17:13
 
Fecha de Ingreso: noviembre-2012
Ubicación: peru
Mensajes: 21
Antigüedad: 11 años, 5 meses
Puntos: 0
Respuesta: WCF - Android - Ksoap2 - Enviar objeto a metodo del WCF (Funciona a medias

esto es ya antigüo y no se si habrás encontrado una solucion, ahora estoy tratando de hacer lo mismo, y tengo el mismo problema, tengo 3 metodos en mi WS:
1- recibe datos primitivos y retornar datos primitivos-> OK
2-recibe datos primitivos y retorna objeto(tipo Alumno)->OK
3-recibe objeto y retorna objeto-> NO

al parecer el objeto que envio desde android no es recibido en el ws, si fueran tan amables de dar alguna sugerencia.
  #5 (permalink)  
Antiguo 23/04/2014, 08:56
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 10 meses
Puntos: 7
Respuesta: WCF - Android - Ksoap2 - Enviar objeto a metodo del WCF (Funciona a medias

Hola hcumbicusr,

Para qué estás haciéndolo con ksoap ?? Te hago esta pregunta por que yo empecé hacerlo así, y al final me di cuenta de que era más óptimo hacerlo mediante servicios Rest. Pero bueno... quizás tú tengas otras necesidades.

Al final no mandé ningún objeto complejo, no obstante, te dejo este enlace con el cual podrías hacerlo, es muy, muy, muy interesante, pero cuando lo encontré ya había empezado a realizar el aplicativo con REST, y no tenía ganas de investigar, aun que cualquier día lo hago. Si lo haces tú antes, estaría bien que nos comentaras por aquí ;)

Te dejo el enalce:

http://seesharpgears.blogspot.com.es...interface.html

Saludos.
__________________
Charlie.
  #6 (permalink)  
Antiguo 23/04/2014, 21:55
 
Fecha de Ingreso: noviembre-2012
Ubicación: peru
Mensajes: 21
Antigüedad: 11 años, 5 meses
Puntos: 0
Pregunta Respuesta: WCF - Android - Ksoap2 - Enviar objeto a metodo del WCF (Funciona a medias

Hola y gracias por responder, lo que pasa es que tengo encargado hacer una aplicacion en android que consulte los datos del WS, el WS ya está implementado y es con WCF. Lo que yo he hecho es elaborar un proyecto similar para ver el funcionamiento en modo local, he creado mi propio WCF y ese problema es el que presento. Si o si tengo que hacerlo con WCF, y todos los metodos de este WS reciben un objeto y retornan un objeto :/ .

-Los atributos de la clase son todos tipo string, y segun he leido Marshals se usa para serializar/deserializar los atributos cuyo tipos de dato son distintos a string.
  #7 (permalink)  
Antiguo 24/04/2014, 06:15
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 10 meses
Puntos: 7
Respuesta: WCF - Android - Ksoap2 - Enviar objeto a metodo del WCF (Funciona a medias

Mmm... no sé darte ninguna solución, lo siento.

Lo único que se me ocurre es que generes tú el string con todo el XML y demás...

Si consigues alguna solución, por favor, hazmelo saber. ;)
__________________
Charlie.
  #8 (permalink)  
Antiguo 24/04/2014, 07:48
 
Fecha de Ingreso: noviembre-2012
Ubicación: peru
Mensajes: 21
Antigüedad: 11 años, 5 meses
Puntos: 0
Respuesta: WCF - Android - Ksoap2 - Enviar objeto a metodo del WCF (Funciona a medias

Gracias de todas maneras. Si consigo hacerlo lo publicaré.

Etiquetas: metodo, objeto, wcf, apps
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:15.