rapt
rapt

Reputation: 12230

java.lang.ClassNotFoundException if I use either hibernate-core 3.6.0 or hibernate-core 4.1.0

How can I solve the following conflict?

I am getting an exception:

Caused by: java.lang.ClassNotFoundException: org.hibernate.context.spi.CurrentSessionContext
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1701)

I am getting an exception:

Caused by: java.lang.NoSuchMethodError: org.hibernate.SessionFactory.openSession()Lorg/hibernate/classic/Session;
    at org.springframework.orm.hibernate3.SessionFactoryUtils.doGetSession(SessionFactoryUtils.java:324)

Dependencies of my project:

my.project:jsf-spring-security:war:1.0.0
+- org.slf4j:slf4j-log4j12:jar:1.6.4:compile
|  +- (org.slf4j:slf4j-api:jar:1.6.4:compile - omitted for duplicate)
|  \- (log4j:log4j:jar:1.2.16:compile - omitted for duplicate)
+- org.slf4j:slf4j-api:jar:1.6.4:compile
+- org.springframework:spring-core:jar:3.1.1.RELEASE:compile
|  +- org.springframework:spring-asm:jar:3.1.1.RELEASE:compile
|  \- commons-logging:commons-logging:jar:1.1.1:compile
+- org.springframework.ldap:spring-ldap:jar:all:1.3.1.RELEASE:compile
|  \- (org.springframework:spring-core:jar:3.0.5.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
+- org.springframework:spring-webmvc:jar:3.1.1.RELEASE:compile
|  +- (org.springframework:spring-asm:jar:3.1.1.RELEASE:compile - omitted for duplicate)
|  +- org.springframework:spring-beans:jar:3.1.1.RELEASE:compile
|  |  \- (org.springframework:spring-core:jar:3.1.1.RELEASE:compile - omitted for duplicate)
|  +- org.springframework:spring-context:jar:3.1.1.RELEASE:compile
|  |  +- (org.springframework:spring-aop:jar:3.1.1.RELEASE:compile - omitted for conflict with 3.0.6.RELEASE)
|  |  +- (org.springframework:spring-beans:jar:3.1.1.RELEASE:compile - omitted for duplicate)
|  |  +- (org.springframework:spring-core:jar:3.1.1.RELEASE:compile - omitted for duplicate)
|  |  +- (org.springframework:spring-expression:jar:3.1.1.RELEASE:compile - omitted for duplicate)
|  |  \- (org.springframework:spring-asm:jar:3.1.1.RELEASE:compile - omitted for duplicate)
|  +- org.springframework:spring-context-support:jar:3.1.1.RELEASE:compile
|  |  +- (org.springframework:spring-beans:jar:3.1.1.RELEASE:compile - omitted for duplicate)
|  |  +- (org.springframework:spring-context:jar:3.1.1.RELEASE:compile - omitted for duplicate)
|  |  \- (org.springframework:spring-core:jar:3.1.1.RELEASE:compile - omitted for duplicate)
|  +- (org.springframework:spring-core:jar:3.1.1.RELEASE:compile - omitted for duplicate)
|  +- org.springframework:spring-expression:jar:3.1.1.RELEASE:compile
|  |  \- (org.springframework:spring-core:jar:3.1.1.RELEASE:compile - omitted for duplicate)
|  \- org.springframework:spring-web:jar:3.1.1.RELEASE:compile
|     +- (aopalliance:aopalliance:jar:1.0:compile - omitted for duplicate)
|     +- (org.springframework:spring-beans:jar:3.1.1.RELEASE:compile - omitted for duplicate)
|     +- (org.springframework:spring-context:jar:3.1.1.RELEASE:compile - omitted for duplicate)
|     \- (org.springframework:spring-core:jar:3.1.1.RELEASE:compile - omitted for duplicate)
+- org.springframework:spring-jdbc:jar:3.1.1.RELEASE:compile
|  +- (org.springframework:spring-beans:jar:3.1.1.RELEASE:compile - omitted for duplicate)
|  +- (org.springframework:spring-core:jar:3.1.1.RELEASE:compile - omitted for duplicate)
|  \- org.springframework:spring-tx:jar:3.1.1.RELEASE:compile
|     +- (aopalliance:aopalliance:jar:1.0:compile - omitted for duplicate)
|     +- (org.springframework:spring-aop:jar:3.1.1.RELEASE:compile - omitted for duplicate)
|     +- (org.springframework:spring-beans:jar:3.1.1.RELEASE:compile - omitted for duplicate)
|     +- (org.springframework:spring-context:jar:3.1.1.RELEASE:compile - omitted for duplicate)
|     \- (org.springframework:spring-core:jar:3.1.1.RELEASE:compile - omitted for duplicate)
+- javax.servlet:jstl:jar:1.2:compile
+- javax.servlet.jsp.jstl:jstl-api:jar:1.2:provided
|  +- (javax.servlet:servlet-api:jar:2.5:provided - omitted for duplicate)
|  \- javax.servlet.jsp:jsp-api:jar:2.1:provided
+- log4j:log4j:jar:1.2.16:compile
+- org.aspectj:aspectjweaver:jar:1.6.10:compile
+- javax.servlet:servlet-api:jar:2.5:provided
+- org.apache.commons:com.springsource.org.apache.commons.httpclient:jar:3.1.0:compile
+- commons-lang:commons-lang:jar:2.4:compile
+- commons-dbcp:commons-dbcp:jar:1.4:compile
|  \- commons-pool:commons-pool:jar:1.5.4:compile
+- commons-io:commons-io:jar:1.4:compile
+- commons-fileupload:commons-fileupload:jar:1.2:compile
+- org.springframework.security:spring-security-taglibs:jar:3.1.0.RELEASE:compile
|  +- org.springframework.security:spring-security-web:jar:3.1.0.RELEASE:compile
|  |  +- (org.springframework:spring-tx:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  |  +- (org.springframework:spring-web:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  |  +- (aopalliance:aopalliance:jar:1.0:compile - omitted for duplicate)
|  |  +- (org.springframework:spring-expression:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  |  +- (org.springframework:spring-aop:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  |  +- (org.springframework.security:spring-security-core:jar:3.1.0.RELEASE:compile - omitted for duplicate)
|  |  +- (org.springframework:spring-jdbc:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  |  +- (org.springframework:spring-context:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  |  +- (org.springframework:spring-beans:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  |  \- (org.springframework:spring-core:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  +- (org.springframework.security:spring-security-acl:jar:3.1.0.RELEASE:compile - omitted for duplicate)
|  +- (org.springframework:spring-web:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  +- (org.springframework:spring-expression:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  +- org.springframework:spring-aop:jar:3.0.6.RELEASE:compile
|  |  +- (aopalliance:aopalliance:jar:1.0:compile - omitted for duplicate)
|  |  +- (org.springframework:spring-asm:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  |  +- (org.springframework:spring-beans:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  |  \- (org.springframework:spring-core:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  +- (org.springframework.security:spring-security-core:jar:3.1.0.RELEASE:compile - omitted for duplicate)
|  +- (org.springframework:spring-beans:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  +- (org.springframework:spring-context:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  \- (org.springframework:spring-core:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
+- org.springframework.security:spring-security-acl:jar:3.1.0.RELEASE:compile
|  +- (org.springframework:spring-tx:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  +- aopalliance:aopalliance:jar:1.0:compile
|  +- (org.springframework:spring-aop:jar:3.0.6.RELEASE:compile - omitted for duplicate)
|  +- (org.springframework.security:spring-security-core:jar:3.1.0.RELEASE:compile - omitted for duplicate)
|  +- (org.springframework:spring-jdbc:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  +- (org.springframework:spring-context:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  \- (org.springframework:spring-core:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
+- org.springframework.security:spring-security-core:jar:3.1.0.RELEASE:compile
|  +- (aopalliance:aopalliance:jar:1.0:compile - omitted for duplicate)
|  +- (org.springframework:spring-expression:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  +- (org.springframework:spring-aop:jar:3.0.6.RELEASE:compile - omitted for duplicate)
|  +- (org.springframework:spring-context:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  +- (org.springframework:spring-beans:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  +- (org.springframework:spring-core:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  \- org.springframework.security:spring-security-crypto:jar:3.1.0.RELEASE:compile
|     \- (org.springframework:spring-core:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
+- org.springframework.security:spring-security-ldap:jar:3.1.0.RELEASE:compile
|  +- (org.springframework:spring-tx:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  +- (org.springframework.security:spring-security-core:jar:3.1.0.RELEASE:compile - omitted for duplicate)
|  +- (org.springframework:spring-beans:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  +- (org.springframework:spring-context:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  +- (org.springframework:spring-core:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  \- org.springframework.ldap:spring-ldap-core:jar:1.3.1.RELEASE:compile
|     \- (commons-lang:commons-lang:jar:2.5:compile - omitted for conflict with 2.4)
+- org.springframework.security:spring-security-config:jar:3.1.0.RELEASE:compile
|  +- (org.springframework:spring-context:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  +- (org.springframework:spring-beans:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
|  +- (aopalliance:aopalliance:jar:1.0:compile - omitted for duplicate)
|  +- (org.springframework:spring-aop:jar:3.0.6.RELEASE:compile - omitted for duplicate)
|  +- (org.springframework.security:spring-security-core:jar:3.1.0.RELEASE:compile - omitted for duplicate)
|  \- (org.springframework:spring-core:jar:3.0.6.RELEASE:compile - omitted for conflict with 3.1.1.RELEASE)
+- junit:junit:jar:4.8.1:compile
+- net.sourceforge.jtds:jtds:jar:1.2.5:provided
+- org.codehaus.jackson:jackson-mapper-asl:jar:1.8.2:compile
|  \- org.codehaus.jackson:jackson-core-asl:jar:1.8.2:compile
+- org.springframework:spring-test:jar:3.1.1.RELEASE:test
+- org.glassfish:javax.faces:jar:2.1.7:compile
+- org.primefaces:primefaces:jar:3.1.1:compile
+- org.glassfish:javax.annotation:jar:3.1.1:compile
+- org.hsqldb:hsqldb:jar:2.0.0:compile
+- com.oracle:ojdbc6:jar:11.2.0:compile
+- org.hibernate:hibernate-core:jar:4.1.0.Final:compile
|  +- commons-collections:commons-collections:jar:3.2.1:compile
|  +- antlr:antlr:jar:2.7.7:compile
|  +- org.jboss.spec.javax.transaction:jboss-transaction-api_1.1_spec:jar:1.0.0.Final:compile
|  +- dom4j:dom4j:jar:1.6.1:compile
|  |  \- xml-apis:xml-apis:jar:1.0.b2:compile
|  +- (org.hibernate.javax.persistence:hibernate-jpa-2.0-api:jar:1.0.1.Final:compile - omitted for duplicate)
|  +- org.jboss.logging:jboss-logging:jar:3.1.0.CR2:compile
|  +- org.javassist:javassist:jar:3.15.0-GA:compile
|  \- org.hibernate.common:hibernate-commons-annotations:jar:4.0.1.Final:compile
|     \- (org.jboss.logging:jboss-logging:jar:3.1.0.CR2:compile - omitted for duplicate)
+- org.hibernate.javax.persistence:hibernate-jpa-2.0-api:jar:1.0.1.Final:compile
+- org.hibernate:hibernate-validator:jar:4.2.0.Final:compile
|  +- javax.validation:validation-api:jar:1.0.0.GA:compile
|  \- (org.slf4j:slf4j-api:jar:1.6.1:compile - omitted for conflict with 1.6.4)
+- org.springframework:spring-orm:jar:3.1.1.RELEASE:compile
|  +- (org.springframework:spring-beans:jar:3.1.1.RELEASE:compile - omitted for duplicate)
|  +- (org.springframework:spring-core:jar:3.1.1.RELEASE:compile - omitted for duplicate)
|  +- (org.springframework:spring-jdbc:jar:3.1.1.RELEASE:compile - omitted for duplicate)
|  \- (org.springframework:spring-tx:jar:3.1.1.RELEASE:compile - omitted for duplicate)
\- javax.transaction:jta:jar:1.1:compile

Upvotes: 2

Views: 14929

Answers (2)

ManMohan Vyas
ManMohan Vyas

Reputation: 4062

rapt - your error with Hibernate 3.6 is due to the fact that you are still referring to

org.springframework.orm.hibernate4.LocalSessionFactoryBean

, use

org.springframework.orm.hibernate3.LocalSessionFactoryBean

instead.

Upvotes: 2

baba.kabira
baba.kabira

Reputation: 3171

I have managed to use Hibernate 4, Spring 3.1.0 on Tomcat 7.

Use

  1. org.springframework.orm.hibernate4.HibernateTransactionManager for Transaction Mananger
  2. org.springframework.orm.hibernate4.LocalSessionFactoryBean for Session Factory

Spring has new package org.springframework.orm.hibernate4.* for Hibernate 4

Note: Spring Hibernate Template is removed from Hibernate 4 support (considered as Anti Pattern)

You can have a look at Spring Hibernate 4 docs

Hope this helps !!!!

Upvotes: 7

Related Questions