Como responder un HTTP 500 - "Internal Server Error" en un servicio web GeneXus C#.
En determinados programas expuestos como servicios web SOAP, es conveniente devolver un error 500 - Internal Server Error, para dejar bien evidente que hubo un problema serio. En GeneXus no hay una forma nativa de devolver estos errores, por ahora al menos. Necesitábamos devolver errores 500 cuando nos llegaba un request con formato invalido. Lo que hicimos fue, agregar en la primera línea del procedure (*): &SoapErrMsg = GetSOAPErrMsg() If &SoapErrMsg <> '' csharp throw new System.Web.Services.Protocols.SoapException([!&SoapErrMsg!], System.Web.Services.Protocols.SoapException.ClientFaultCode); endif * Esto fue probado en el Upgrade 5 de GeneXus 16.