WebService

21/08/2008 - 15:59 por Pablo Di Martino | Informe spam
Tengo un webeservice que el método publicado recibe un objeto.
Ese objeto tiene dos propiedades, un long y un string. Todo funciona
perfectamente pero cuando lo utiliza otra empresa, si el string que mandan
tiene un acento o tilde, me llegan caracteres raros.

Si yo llamo al webservice con un acento o tilde funciona correctamente, solo
da error cuando lo llama otra empresa. No sé de qué manera lo están llamado,
supuestamente es con un contenedor http y arman el xml a enviar.

Me armé un log extendiendo la clase SoapExtension y me dí cuenta que los
mensajes soaps son idénticos pero cuando NET se encarg de pasar el mensaje
soap al objeto si lo llamo yo funciona correctamente pero si lo llama una
tercera empresa por ej. el caracter "ó" lo transforma a "??"

Se entiende más o menos mi problema??

Alguna idea?

Muchas gracias, de antemano
 

Leer las respuestas

#1 Daniel Montero
22/08/2008 - 01:31 | Informe spam
Hola Pablo

Debes considerar tres cosas.
Que tecnología este usando la otra empresa para consumir tu WS, que versión
de SOAP están utilizando y por último pero no menor, el encoding del XML del
mensaje, utf-8, utf-16

Saludos

Daniel

"Pablo Di Martino" wrote:

Tengo un webeservice que el método publicado recibe un objeto.
Ese objeto tiene dos propiedades, un long y un string. Todo funciona
perfectamente pero cuando lo utiliza otra empresa, si el string que mandan
tiene un acento o tilde, me llegan caracteres raros.

Si yo llamo al webservice con un acento o tilde funciona correctamente, solo
da error cuando lo llama otra empresa. No sé de qué manera lo están llamado,
supuestamente es con un contenedor http y arman el xml a enviar.

Me armé un log extendiendo la clase SoapExtension y me dí cuenta que los
mensajes soaps son idénticos pero cuando NET se encarg de pasar el mensaje
soap al objeto si lo llamo yo funciona correctamente pero si lo llama una
tercera empresa por ej. el caracter "ó" lo transforma a "??"

Se entiende más o menos mi problema??

Alguna idea?

Muchas gracias, de antemano

Preguntas similares