Error Soap en el Handler plug-in. Sólo se permite un uso de cada dirección de socket
-
3 ธันวาคม 2552 13:33Buenos días,
Al hacer una carga masiva de datos, recibíamos cada x (60,100,200) registros cargados el error siguiente (capturado como SoapExcepcion y capturando el detail del xml devuelto:
Soap Detail:
0x80040265
A Web error occurred in the Handler plug-in.Sólo se permite un uso de cada dirección de socket (protocolo/dirección de red/puerto)
Platform
Para solucionarlo, tal como ví en este foro y en otros, utilizamos la propiedad UnsafeAuthenticatedConnectionSharing asignándole el valor 'True' para poder compartir el mismo socket por todo el proceso y no saltara el error, de la siguiente forma:
ret = new CrmService ();
ret.CrmAuthenticationTokenValue = token;
ret.UnsafeAuthenticatedConnectionSharing = true ;
...
y posteriormente llamamos al método Create del objeto ret, donde capturamos el SoapException y vemos en el detail del xml devuelto otra vez el error anterior,
A ver si alguien puede saber que está pasando,
Gracias anticipadamente,
Pedro J. González
ตอบทั้งหมด
-
3 ธันวาคม 2552 15:52
Hola Pedro, una pregunta, cuantos plugin se ejecutan cuando haces el
create?... y es necesario que este activo ese (esos) plugin? acuérdate que
según las best practices que nos da Microsoft
(http://msdn.microsoft.com/en-us/library/bb955073.aspx), nos recomienda
desactivar los plugin.
Saludos
Atilio- ทำเครื่องหมายเป็นคำตอบโดย Giorgio Garcia-AgredaMVP, Moderator 4 ตุลาคม 2553 8:31
-
3 ธันวาคม 2552 15:59Hola Atilio,
Efectivamente hay varios plugin programados, pero ninguno activo cuando se ejecuta el plugin que da este error. El consejo que da Microsoft entiendo yo que es para no afectar al rendimiento, ya que se aconseja en las mejores prácticas de rendimiento. Otra opción que he probado asociar más puertos al servicio sql server asociado, he comprobado que Sql Server 2005 escucha en todos, pero CRM solo trabaja con el puerto inicialmente definido (no sé si es porque era el que estaba en la instalación) y no sé que en que punto podemos indicarle a CRM que Sql Server está en el puerto tal para que vaya a otro menos ocupado (he mirado en el registro de Windows y en el web.config).