[Building Sakai] Library upgrades in the Kernel

Zach A. Thomas zach at aeroplanesoftware.com
Tue Jul 14 09:04:28 PDT 2009


Stephen Marquard wrote:
> HIbernate 3.2.6 was the next version out when the JIRA was filed.  
> 3.2.7 would make most sense, or 3.3.2 if someone can review the  
> changes for compatibility issues, etc.

I spent a little time trying 3.3.1.GA (only because it's the latest  
version in the central repository [1]) with the kernel. The Hibernate  
distribution has been broken into smaller pieces since 3.3. A good  
overview of that is here: http://blog.hibernate.org/9384.lace

I think I got pretty close to the right cocktail of dependencies in  
kernel. My current issue is that something is pulling in an older  
version of either slf4j or log4j or commons-logging, and during many  
of the unit tests I get this:

> Error creating bean with name  
> 'org 
> .sakaiproject.springframework.orm.hibernate.GlobalSessionFactory'  
> defined in file [/Users/zach/dev/sakai-trunk/kernel/kernel-component/ 
> src/main/webapp/WEB-INF/db-components.xml]: Invocation of init  
> method failed; nested exception is java.lang.NoSuchMethodError:  
> org.slf4j.Logger.isTraceEnabled()Z


SLF4J got the isTraceEnabled method in version 1.4. A little Googling  
suggests that this error can happen if you've got a jar that includes  
its own dependencies, and has an older one, but I have yet to track  
down where this bean is getting its org.slf4j package.

As an aside, I also learned that using dbcp with Hibernate was  
deprecated in the Hibernate 2.x timeframe.[2] Do we care about that?  
Does it affect us?

To summarize, we won't get Hibernate 3.3.x just by flipping a digit,  
but it may be worth the effort for being better able to get help with  
Hibernate issues when we have them.

Zach

[1] http://repo1.maven.org/maven2/org/hibernate/hibernate-core/
[2] http://opensource.atlassian.com/projects/hibernate/browse/HHH-636


More information about the sakai-dev mailing list