miércoles, 21 de febrero de 2007

Server did not recognize the value of HTTP Header SOAPAction

Este error es muy común cuando hacemos cambios y no estamos concientes de lo que nos puede afectar dichos cambios.

Los webservices tienen un namespace como este:

[

WebService(Namespace = "http://MiCompania.com.gt/" )]
Normalmente cuando creamos el archivos asmx nos crea el namespace por default.

[

WebService(Namespace = "http://tempuri.org/")]


Y se nos solicita se lo cambiemos al nombre de nuestra compañia o un nombre que nos identifique. Lo que me paso fue que una aplicacion hacia referencia a unos web services, luego en busqueda de minimizar el tiempo de compilación y con el nuevo sp1 de VS 2005 cambie el proyecto a un proyecto Web en vez de un web site y tuve al final que crear cada web services y copiar el codigo de cada uno de ellos pero solo copie la parte donde definie los [webmethod]'s, y como por default al crear los nuevos archivos asmx le asigna el namespace tempuri.org, cuando ejecute la aplicación que ya funcionaba, dejo de hacerlo con el mensaje:

Server did not recognize the value of HTTP Header SOAPAction

Encontre la solución en la web y aquí les va la referencia del sitio: http://bluebones.net/2003/07/server-did-not-recognize-http-header-soapaction/


La solución entonces para mi caso fue cambiar los namespace por default al que apuntaba mi aplicación y listo continuo funcionando, como lo explica el link que les comparto.
Ojo!: cuando actualice los web reference del proyecto que me dejo de funcionar me actualizo los archivos disco haciendo referencia a tempuri.org y no al de mi compañia, lo cual es mas correcto.

--
Saludos,

Manolo Herrera

No hay comentarios.: