Aleksei Kachanov
07-17-2006, 10:04 AM
I don't know how to explain the problem and the reason of the problem...
I have web application which use Spring & NHibernate.
Use DAO pattern and transactions.
When we run concurrently two browser to access data we failed with exception...
Each time exception are different ... :(
During research found that exception failed in
Spring.Aop.Framework.DynamicProxy.CompositionProxy Builder
in
[CODE]
public Type BuildProxy(IAdvised advised)
foreach (DictionaryEntry entry in _targetMethods)
{
FieldInfo field = proxyType.GetField((string)entry.Key, BindingFlags.NonPublic | BindingFlags.Static);
field.SetValue(proxyType, (MethodInfo)entry.Value); // -- NUL L REFERENCE or Collection was modified
}
Maybe I have wrong configuration .... or ..
Can anybody help to resolve this problem?
Execute said code by
public IList GetTeacherList(Institution institution)
{
return (IList)HibernateTemplate.Execute(delegate(ISession session)
{
ICriteria criteria = session.CreateCriteria(typeof(Teacher))
.Add(Expression.Eq("Institution", institution)).AddOrder(new Order("FullName", true)).AddOrder(new Order("UserID", true));
return criteria.List();
});
}
P.S. Use the latest night build Spring.NET-20060711-2205
I have web application which use Spring & NHibernate.
Use DAO pattern and transactions.
When we run concurrently two browser to access data we failed with exception...
Each time exception are different ... :(
During research found that exception failed in
Spring.Aop.Framework.DynamicProxy.CompositionProxy Builder
in
[CODE]
public Type BuildProxy(IAdvised advised)
foreach (DictionaryEntry entry in _targetMethods)
{
FieldInfo field = proxyType.GetField((string)entry.Key, BindingFlags.NonPublic | BindingFlags.Static);
field.SetValue(proxyType, (MethodInfo)entry.Value); // -- NUL L REFERENCE or Collection was modified
}
Maybe I have wrong configuration .... or ..
Can anybody help to resolve this problem?
Execute said code by
public IList GetTeacherList(Institution institution)
{
return (IList)HibernateTemplate.Execute(delegate(ISession session)
{
ICriteria criteria = session.CreateCriteria(typeof(Teacher))
.Add(Expression.Eq("Institution", institution)).AddOrder(new Order("FullName", true)).AddOrder(new Order("UserID", true));
return criteria.List();
});
}
P.S. Use the latest night build Spring.NET-20060711-2205