[jbosscache-dev] Re: [hibernate-dev] cache-jbosscache3 module for Hibernate Core

Brian Stansberry brian.stansberry at redhat.com
Sat Oct 18 12:06:08 EDT 2008


Sorry, Manik, tests were failing w/ NoSuchMethodError and I saw your 
recent change in hibernate trunk to remove use of 
DefaultCacheFactory.getInstance() and assumed the method was gone. My 
bad :-(

Perhaps problem is loss of generics info in the class file?

2.1.0.GA:

public static <K, V> CacheFactory<K, V> getInstance()

3.0.0.CR1:

public static DefaultCacheFactory getInstance()

Failure I see is:

java.lang.NoSuchMethodError: 
org.jboss.cache.DefaultCacheFactory.getInstance()Lorg/jboss/cache/CacheFactory;
	at 
org.hibernate.cache.jbc2.builder.SharedCacheInstanceManager.createSharedCache(SharedCacheInstanceManager.java:193)


I don't remember exactly how I tested this yesterday, but messing with 
it today, I can reproduce by:

1) revert pom in my checkout of the 3.3.1 tag so it uses JBC 2.1.0.GA
2) revert any compiled classes back to the original 3.3.1
mvn -Dmaven.test.skip.exec=true clean install

3) change the pom so it uses JBC 3.3.0.CR1 and JGroups 2.6.5
4) run the testsuite

mvn -Ptest test
....
Tests run: 225, Failures: 0, Errors: 21, Skipped: 0

5) force a new compile and then retest:

mvn -Ptest clean test
...
Tests run: 225, Failures: 0, Errors: 0, Skipped: 0


Problem is people using a 3.3.1 binary don't get to recompile. ;)

Manik Surtani wrote:
> Weird, getInstance() was removed in early ALPHAs, and was replaced again 
> pretty quickly - in 3.0.0.BETA1, even.
> 
> http://fisheye.jboss.org/browse/JBossCache/core/tags/3.0.0.BETA1/src/main/java/org/jboss/cache/DefaultCacheFactory.java?r=6676
> 
> 
> 
> 2008/10/18 Jason T. Greene <jason.greene at redhat.com 
> <mailto:jason.greene at redhat.com>>
> 
>     Brian Stansberry wrote:
> 
>         Steve Ebersole wrote:
> 
>             so JBC 3 needs this change anyway?  
> 
> 
>         Yes, if it wants to go in, say, JBoss AS 5.2.  Which I'm quite
>         sure the JBC team wants, since they made a bunch of other more
>         significant changes to ensure compatibility. This one's real
>         trivial.
> 
>             at which point it would be a total
>             drop-in replacement?
> 
> 
>         Yes. I just did a diff between head of trunk (which passes 100%
>         w/ JBC 3.0.0.CR1 plugged in) and the hibernate-3.3.1.GA
>         <http://hibernate-3.3.1.GA> tag and the only differences are two
>         places where the missing DefaultCacheFactory.getInstance() call
>         was replaced.
> 
> 
>     I fixed this compatibility problem awhile ago, but it could have
>     been after CR1 was tagged.
> 
>     -- 
>     Jason T. Greene
> 
>     JBoss, a division of Red Hat
>     _______________________________________________
>     jbosscache-dev mailing list
>     jbosscache-dev at lists.jboss.org <mailto:jbosscache-dev at lists.jboss.org>
>     https://lists.jboss.org/mailman/listinfo/jbosscache-dev
> 
> 


-- 
Brian Stansberry
Lead, AS Clustering
JBoss, a division of Red Hat
brian.stansberry at redhat.com



More information about the hibernate-dev mailing list