Hi,
We're getting an exception in some of our own code compiled against
base-2.16.2pre
[java] Exception in thread "main" org.hibernate.SessionException:
proxies cannot be fetched by a stateless session
[java] at
org.hibernate.impl.StatelessSessionImpl.immediateLoad(StatelessSessionImpl.java:244)
[java] at
org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:176)
[java] at
org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:215)
[java] at
org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:191)
[java] at
net.sf.basedb.core.data.ReporterData_$$_javassist_37.hashCode(ReporterData_$$_javassist_37.java)
[java] at java.util.HashMap.put(HashMap.java:372)
[java] at java.util.HashSet.add(HashSet.java:200)
[java] at
org.vectorbase.funcgen.gesol.DB.base2.Base2ReporterAdaptor.fetchByMicroarray(Base2ReporterAdaptor.java:122)
[java] at
org.vectorbase.funcgen.lucene.IndexReporter.indexAll(IndexReporter.java:75)
[java] at
org.vectorbase.funcgen.lucene.IndexReporter.main(IndexReporter.java:50)
It used to work on 2.12.x but I'm having trouble reproducing that now
because I don't have a database with the correct schema easily to hand
(we could dig up an old backup...).
After some detective work, I believe it's something to do with
http://dev.thep.lu.se/base/ticket/1350
and
http://dev.thep.lu.se/base/changeset/5026/trunk/src/core/net/sf/basedb/core/data/ReporterData.java
Should we change our code?
("Microarray" is one of our object classes)
public List fetchByMicroarray(Microarray array) {
ArrayList result = new ArrayList();
ArrayDesign baseArray =
net.sf.basedb.core.ArrayDesign.getById(getDbControl(),
array.getDBID());
DbControl dc = getDbControl();
if (baseArray.isPlatform(Platform.AFFYMETRIX)) {
// snipped,
// not relevant here
} else {
DataQuery<FeatureData> featQuery =
baseArray.getFeatures();
featQuery.include(Include.SHARED);
DataResultIterator<FeatureData> featIt =
featQuery.iterate(dc);
Set resultSet = new HashSet();
while (featIt.hasNext()) {
FeatureData featData =
(FeatureData)featIt.next();
resultSet.add(featData.getReporter());
}
Iterator setIt = resultSet.iterator();
while(setIt.hasNext()) {
org.vectorbase.funcgen.gesol.Reporter reporter =
makeFromBaseRep((ReporterData)setIt.next());
result.add(reporter);
}
}
return result;
}
Any help would be greatly appreciated - as we are not hibernate specialists.
many thanks,
Bob.
------------------------------------------------------------------------------
Special Offer-- Download ArcSight Logger for FREE (a $49 USD value)!
Finally, a world-class log management solution at an even better price-free!
Download using promo code Free_Logger_4_Dev2Dev. Offer expires
February 28th, so secure your free ArcSight Logger TODAY!
http://p.sf.net/sfu/arcsight-sfd2d
_______________________________________________
basedb-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/basedb-devel