Pregunta

De fondo:Voy a llamar a un Servicio Web escrito en ASP.NET que realiza consultas en una base de datos de Oracle.Sé que el propio Servicio Web funciona, ya lo he utilizado antes de otras aplicaciones.Así que tengo una aplicación web en Visual Studio que he estado de conmutación de ida y vuelta al punto de un 'DEV' servicio web para una producción configurado versión de la misma web de servicios para la prueba.Apunta a la 'DEV' configurado servicio web no es problema, pero llamar a la versión de producción siempre tengo una excepción llamar al servicio de:

SoapException was unhandled by user code
Server was unable to process request. ---> could not execute query
[ SELECT this_.FIELD1 as FIELD1_18_0_, this_.FIELD2 as FIELD12_18_0_ FROM ABC.TABLE_A this_ WHERE this_.FIELD1 like :p0 ORDER BY this_.FIELD1 asc ]
Positional parameters:  #0>00073%
[SQL: SELECT this_.FIELD1 as FIELD1_18_0_, this_.FIELD2 as FIELD12_18_0_ FROM ABC.TABLE_A this_ WHERE this_.FIELD1 like :p0 ORDER BY this_.FIELD1] ---> ORA-12571: TNS:packet writer failure

Me encontré con las consultas SQL contra la base de datos correspondiente (cortar y pegar directamente de los mensajes de excepción) y la consulta regresó con los datos esperados.He intentado actualizar y volver a agregar la referencia de Servicio Web tanto como un "Servicio de Referencia" (.NET 3.0+ forma) y como una "Web de Referencia" (Mayores .NET manera), y ambos dan el mismo error.

Pregunta:Así que, ¿qué hace un "ORA-12571:TNS:paquete de escritor de error" error de decir que en el contexto de un Servicio Web?Buscando el Error de Oracle el número da algunos muy vaga posibles causas, tales como "suelto el cable de conexión" o "conflicto de dirección IP".Estoy bastante seguro de que este es ninguno de estos, ya que una aplicación diferente es en la actualidad con éxito el uso de ese Servicio Web.Posiblemente algún tipo de error de configuración, o tal vez algo más sutil?Nadie ve este enojoso Oracle número de error que se atribuye a algo en la web relacionado con el servicio?

¿Fue útil?

Solución

Su llamada va desde el cliente al servidor ws ws a la base de datos Oracle.

Su error es un error ORA, que se genera por la base de datos. Así que su problema es probablemente entre el servidor de WS y la base de datos.

Al ejecutar "las consultas SQL contra la base de datos apropiada", lo hiciste desde el servidor web? Si no se puede probar eso. Asegúrese de que está utilizando la misma configuración de la conexión.

Editar

De acuerdo con el comentario anterior, el verdadero problema era una falta de coincidencia conductor.

Otros consejos

Yo sugeriría volver a examinar sus supuestos con más cuidado, ya que esto es claramente un error en el diálogo de servicios web con el PP y debe ser completamente independiente de la w / s persona que llama.

Si la llamada al / w s está generando esta excepción específica, debe ser hacerlo para todas las otras invocaciones, por lo que su 'otra aplicación' que está utilizando el servicio con éxito simplemente no se está ejecutando el mismo código o existen factores exógenos en juego.

De cualquier manera, no está relacionado a cómo se ha registrado o invocar el servicio.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top