[질문] java.lang.NoSuchMethodError: org.hibernate.SessionFactory.openSession()Lorg/hibernate/classic/Session;

151 views
Skip to first unread message

youls

unread,
Jun 13, 2013, 9:04:51 PM6/13/13
to ks...@googlegroups.com
현재 Spring 2.0.6 ->3.1.1/ Hibernate 3.2.3.ga ->4.1.0 버젼 업댓 프로젝트를 진행하고 있는 개발자 입니다. ㅠ
 
java.lang.NoSuchMethodError: org.hibernate.SessionFactory.openSession()Lorg/hibernate/classic/Session;
 at org.springframework.orm.hibernate3.SessionFactoryUtils.doGetSession(SessionFactoryUtils.java:324)
 at org.springframework.orm.hibernate3.SessionFactoryUtils.getSession(SessionFactoryUtils.java:235)
 at org.springframework.orm.hibernate3.HibernateTemplate.getSession(HibernateTemplate.java:457)
 at org.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:393)
 at org.springframework.orm.hibernate3.HibernateTemplate.executeWithNativeSession(HibernateTemplate.java:374)
 at org.springframework.orm.hibernate3.HibernateTemplate.find(HibernateTemplate.java:912)
 at org.springframework.orm.hibernate3.HibernateTemplate.find(HibernateTemplate.java:904)
 at com.cim.idm.dsp.engine.EngineBooter.main(EngineBooter.java:21)
 
이런 exception이 나네여 ㅠㅜ
전 버전 하고 session가져오는 부분이 틀려졌단 이야기도 있긴한거같은데,,
저희는 되도록 소스를 바꾸지 않는 선에서 업댓중이거든요,,
간단히 라이브러리만 업댓할 수 있는 방법이 없을까여 ???
 
 
 <bean id="sessionFactory"
  class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
  
  <property name="dataSource" ref="dataSource" />
  <property name="mappingResources">
   <list>
   <value>kr/co/sfa/framework/db/orm/Rtdmessagedef.hbm.xml</value>
   <value>kr/co/sfa/framework/db/orm/Rtdmessageitemdef.hbm.xml</value>
   <value>kr/co/sfa/framework/db/orm/Rtdparameters.hbm.xml</value>
   <value>kr/co/sfa/framework/db/orm/Rtdpolicykey.hbm.xml</value>
   <value>kr/co/sfa/framework/db/orm/Rtdpolicymodel.hbm.xml</value>
   <value>kr/co/sfa/framework/db/orm/Rtdpolicymodelassign.hbm.xml</value>
   
   
   </list>
  </property>
 
  <!--hibernate.hbm2ddl.auto = validate, update, create, create-drop -->
  <property name="hibernateProperties">
   <value>
    hibernate.dialect=org.hibernate.dialect.Oracle10gDialect
    cache.provider_class=org.hibernate.cache.internal.NoCacheProvider
    javax.persistence.validation.mode=AUTO
    hibernate.default_schema=${hibernate.default_schema}
    hibernate.hbm2ddl.auto=${hibernate.hbm2ddl.auto}
   
   </value>
  </property>
 </bean>
 <bean id="transactionManager"
            class="org.springframework.orm.hibernate4.HibernateTransactionManager">
     <property name="sessionFactory" ref="sessionFactory"/>
   </bean>
 
 <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" init-method="createDataSource" destroy-method="close">
  <property name="driverClassName" value="${jdbc.driverClassName}" />
  <property name="url" value="${jdbc.url}" />
  <property name="username" value="${jdbc.username}" />
  <property name="password" value="${jdbc.password}" />
<!--   <property name="validationQuery"><value>select 1 from dual</value></property> -->
 
<!--         <property name="driverClassName"><value>com.microsoft.sqlserver.jdbc.SQLServerDriver</value></property>
        <property name="url"><value>jdbc:sqlserver://${db.mes.url}</value></property>
  <property name="validationQuery"><value>select 1</value></property>
 -->
       
        <property name="maxActive"><value>${maxActive}</value></property>
        <property name="maxIdle"><value>-1</value></property>
        <property name="minIdle"><value>1</value></property>
       
  <!-- milli sec -->
        <property name="maxWait"><value>${maxWait}</value></property>
        <property name="initialSize"><value>${initialSize}</value></property>
  <property name="testOnBorrow"><value>false</value></property>
  <property name="minEvictableIdleTimeMillis"><value>1000</value></property>
  <property name="timeBetweenEvictionRunsMillis"><value>10000</value></property>
        <!--<property name="connectionProperties" value="v$session.program=SFA" />-->
 </bean>
 
beanproperty는 이렇게 가져다 쓴답니다..혹시 아시면 알려주세용 ㅠㅜ
 

Jisung, Ahn

unread,
Jun 13, 2013, 9:39:44 PM6/13/13
to ks...@googlegroups.com
스프링에서 hibernate3와 4를 지원하는 라이브러리가 다를겁니다. 
확인해 보세요 

2013. 6. 14., 오전 10:04, youls <you...@gmail.com> 작성:

--
Google 그룹스 'Korea Spring User Group' 그룹에 가입했으므로 본 메일이 전송되었습니다.
이 그룹에서 탈퇴하고 더 이상 이메일을 받지 않으려면 ksug+uns...@googlegroups.com에 이메일을 보내세요.
http://groups.google.com/group/ksug에서 그룹을 방문하세요.
더 많은 옵션을 보려면 https://groups.google.com/groups/opt_out을(를) 방문하세요.
 
 

Reply all
Reply to author
Forward
0 new messages