Aplicacion distribuida (n capas)

23/05/2006 - 20:35 por AOG | Informe spam
Hola,
Tengo un proyecto en VB 2005 con arquitectura distribuida expongo la capa de
negocio atravez de COM+ (libreria EnterpriseServices). El problema es que
cuando el cliente hace petición a la capa de negocio me da un error:
No pudo realizarse la activación de COM+ ya que ésta no pudo completarse en
el espacio de tiempo especificado. (Excepción de HRESULT: 0x8004E024)

Esto sucede cuando lleno una Grid y hago consecutivamente una petición por
cada fila para obtener el valor de un campo de una tabla (SQL server), es
decir, accedo 133 veces, bueno no llega porque me da el error a los 80 veces
a la capa de negoacio.
El ciclo es: la capa de Interfaz de Usuario llama a la capa de negocio
(Com+) esta a su vez a la de datos, devolviendo el resultado.

He provado a aumentar los valores:
<EnterpriseServices.ObjectPooling(minPoolSize:= 20, maxPoolSize: 00,
CreationTimeout: 000)> _

tambien e quitado de la cabecera de mi clase (capa de negocio)
<EnterpriseServices.ObjectPooling...> y
<EnterpriseServices.JustInTimeActivation()
y nada sigue igual

¿Como puedo evitar este error? , ¿que está sucediendo?

Gracias, un saludo
 

Leer las respuestas

#1 Harvey Triana
23/05/2006 - 20:40 | Informe spam
En el msdn hay una discusión al respecto:
http://forums.microsoft.com/MSDN/Sh...spx?PostID2372&SiteID=1

PS. ¿Debe ser COM+?

<ht />

"AOG" escribió en el mensaje
news:
Hola,
Tengo un proyecto en VB 2005 con arquitectura distribuida expongo la capa
de
negocio atravez de COM+ (libreria EnterpriseServices). El problema es que
cuando el cliente hace petición a la capa de negocio me da un error:
No pudo realizarse la activación de COM+ ya que ésta no pudo completarse
en
el espacio de tiempo especificado. (Excepción de HRESULT: 0x8004E024)

Esto sucede cuando lleno una Grid y hago consecutivamente una petición por
cada fila para obtener el valor de un campo de una tabla (SQL server), es
decir, accedo 133 veces, bueno no llega porque me da el error a los 80
veces
a la capa de negoacio.
El ciclo es: la capa de Interfaz de Usuario llama a la capa de negocio
(Com+) esta a su vez a la de datos, devolviendo el resultado.

He provado a aumentar los valores:
<EnterpriseServices.ObjectPooling(minPoolSize:= 20, maxPoolSize: 00,
CreationTimeout: 000)> _

tambien e quitado de la cabecera de mi clase (capa de negocio)
<EnterpriseServices.ObjectPooling...> y
<EnterpriseServices.JustInTimeActivation()
y nada sigue igual

¿Como puedo evitar este error? , ¿que está sucediendo?

Gracias, un saludo


Preguntas similares