Sorry I don't have the time to build a test case, the problem appears only 
when the log is on DEBUG and not in INFO.
To reproduce it you have to set an entity as parameter of an HQL query but 
if the entity is of its type it works, if the entity is a proxy type it 
throws the exception.
 
Message: Could not execute query[SQL: SQL not available]
Stacktrace: at NHibernate.Impl.SessionImpl.List(String query, 
QueryParameters queryParameters, IList results)
at NHibernate.Impl.SessionImpl.List(String query, QueryParameters 
parameters)
at NHibernate.Impl.QueryImpl.List()
at NHibernate.Impl.AbstractQueryImpl.UniqueResult()
InnerException: Castle.Proxies.UserProxy
Stacktrace: at NHibernate.Type.EntityType.ToLoggableString(Object value, 
ISessionFactoryImplementor factory)
at NHibernate.Impl.Printer.ToString(IDictionary`2 namedTypedValues)
at 
NHibernate.Engine.QueryParameters.LogParameters(ISessionFactoryImplementor 
factory)
at NHibernate.Engine.Query.HQLQueryPlan.PerformList(QueryParameters 
queryParameters, ISessionImplementor session, IList results)
at NHibernate.Impl.SessionImpl.List(String query, QueryParameters 
queryParameters, IList results)Show trimmed content
 Hallo 
Wir verwenden nhibernate v. 3.1.0.4000 und wenn in einer HQL-Abfragen der 
Parameter ist ein Proxy eines Unternehmens nhibernate wirft die Ausnahme 
"Konnte Abfrage nicht ausführen [SQL: SQL nicht verfügbar]". 
Zum Beispiel: Session.CreateQuery ("select count (user) von den Nutzern als 
Benutzer, wo user.Chef =: chef").. SetEntity ("chef", user.Chef) 
UniqueResult () 
Das Problem ist, dass nhibernate diese Proxy-Entitäten zurückgibt, und 
jetzt sind sie überall knallen in der Anwendung. 
Sie kommen als Ergebnis der HQL-Abfragen, als Eigenschaften anderer 
Unternehmen (lazy load), innen Einheiten Sammlungen (Lazy Load). 
Ist das die Wirkung des nhibernate 2nd level cache? 
Wenn wir die Entitäten unproxy die HQL-Abfrage funktioniert, aber wir haben 
viele von ihnen, und wir wollen nicht unproxy Code überall hinzuzufügen. 
Ist das ein Fehler von NHibernate oder nicht? Wie kann es behoben werden? 
Meldung: Konnte Abfrage nicht ausführen [SQL: SQL nicht verfügbar] 
Stacktrace: bei NHibernate.Impl.SessionImpl.List (String query, 
QueryParameters queryParameters, IList results) 
am NHibernate.Impl.SessionImpl.List (String query, QueryParameters 
Parameter) 
bei NHibernate.Impl.QueryImpl.List () 
bei NHibernate.Impl.AbstractQueryImpl.UniqueResult () 
InnerException: Castle.Proxies.UserProxy 
Stacktrace 
am NHibernate.Type.EntityType.ToLoggableString (Object value, 
ISessionFactoryImplementor Werk) 
am NHibernate.Impl.Printer.ToString (IDictionary `2 namedTypedValues) 
am NHibernate.Engine.QueryParameters.LogParameters 
(ISessionFactoryImplementor Werk) 
am NHibernate.Engine.Query.HQLQueryPlan.PerformList (QueryParameters 
queryParameters, ISessionImplementor Sitzung IList Ergebnisse) 
am NHibernate.Impl.SessionImpl.List (String query, QueryParameters 
queryParameters, IList results) 
 
   

-- 
You received this message because you are subscribed to the Google Groups 
"nhusers" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/nhusers/-/1c45tSb3vbgJ.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/nhusers?hl=en.

Reply via email to