Ploblema com spring

5 respostas
xxjamisxx

fui fazer uns exemplo de usa o spring com hibernate
mais ta dados uns erro que nao era para acontecer
alguem poder me da ums conselho

spring.xml

<?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN"
		  "http://www.springframework.org/dtd/spring-beans-2.0.dtd">

<beans>
     <bean name="hibernate" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean" scope="singleton">
         <property name="hibernateProperties">
             <props>
                  <prop key="hibernat.dialect">org.hibernate.dialect.DerbyDialect</prop>
                  <prop key="hibernate.connection.driver_class">org.apache.derby.jdbc.ClientDriver</prop>
                  <prop key="hibernate.connection.username">spring</prop>
                  <prop key="hibernate.connection.password">spring</prop>
                  <prop key="hibernate.connection.url">jdbc:derby://localhost:1527/spring</prop>

                  <prop key="hibernate.c3p0.acquire_increment">1</prop>
                  <prop key="hibernate.c3p0.idle_test_period">100</prop>
                  <prop key="hibernate.c3p0.max_size">10</prop>
                  <prop key="hibernate.c3p0.max_statements">100</prop>
                 <prop key="hibernate.c3p0.min_size">5</prop>
                 <prop key="hibernate.c3p0.timeout">100</prop>
                  
             </props>
         </property>
       
         <property name="mappingResources">
             <list>
                  <value>com/br/spring/Supplier.hbm.xml</value>
             </list>
         </property>
               
     </bean>

</beans>

Supplier.hbm.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
             "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping>
  <class name="com.br.entity.supplier" table="APP.SUPPLIER">
          <id name="id" column="ID">
              <generator class="uuid"/>
          </id>
         <property name="name" column="NOME"/>
        <property name="email" column="EMAIL"/>
  </class>
</hibernate-mapping>

gera este erro

Testcase: testGetSessionFactory(com.br.util.SpringAccessTest):        Caused an ERROR
Error creating bean with name 'hibernate' defined in class path resource [com/br/spring/Spring.xml]: Invocation of init method failed; nested exception is java.lang.NoClassDefFoundError: Could not initialize class net.sf.cglib.proxy.Enhancer
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'hibernate' defined in class path resource [com/br/spring/Spring.xml]: Invocation of init method failed; nested exception is java.lang.NoClassDefFoundError: Could not initialize class net.sf.cglib.proxy.Enhancer
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1338)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
        at java.security.AccessController.doPrivileged(Native Method)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:423)
        at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:728)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:380)
        at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
        at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:83)
        at com.br.util.SpringAccess.getSpringContext(SpringAccess.java:24)
        at com.br.util.SpringAccess.getSessionFactory(SpringAccess.java:30)
        at com.br.util.SpringAccessTest.testGetSessionFactory(SpringAccessTest.java:59)
Caused by: java.lang.NoClassDefFoundError: Could not initialize class net.sf.cglib.proxy.Enhancer
        at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.getProxyFactory(CGLIBLazyInitializer.java:117)
        at org.hibernate.proxy.pojo.cglib.CGLIBProxyFactory.postInstantiate(CGLIBProxyFactory.java:43)
        at org.hibernate.tuple.entity.PojoEntityTuplizer.buildProxyFactory(PojoEntityTuplizer.java:162)
        at org.hibernate.tuple.entity.AbstractEntityTuplizer.<init>(AbstractEntityTuplizer.java:135)
        at org.hibernate.tuple.entity.PojoEntityTuplizer.<init>(PojoEntityTuplizer.java:55)
        at org.hibernate.tuple.entity.EntityEntityModeToTuplizerMapping.<init>(EntityEntityModeToTuplizerMapping.java:56)
        at org.hibernate.tuple.entity.EntityMetamodel.<init>(EntityMetamodel.java:295)
        at org.hibernate.persister.entity.AbstractEntityPersister.<init>(AbstractEntityPersister.java:434)
        at org.hibernate.persister.entity.SingleTableEntityPersister.<init>(SingleTableEntityPersister.java:109)
        at org.hibernate.persister.PersisterFactory.createClassPersister(PersisterFactory.java:55)
        at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:226)
        at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1294)
        at org.springframework.orm.hibernate3.LocalSessionFactoryBean.newSessionFactory(LocalSessionFactoryBean.java:814)
        at org.springframework.orm.hibernate3.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:732)
        at org.springframework.orm.hibernate3.AbstractSessionFactoryBean.afterPropertiesSet(AbstractSessionFactoryBean.java:211)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1369)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1335)

5 Respostas

R
Caused by: java.lang.NoClassDefFoundError: Could not initialize class net.sf.cglib.proxy.Enhancer
xxjamisxx

amigo isso quer dizer o quer ??

R

Quer dizer que agora vc deve dar uma pesquisada.

romarcio

Sempre que vc tiver uma exceção que diga isso:Caused by: java.lang.NoClassDefFoundError: é sinal que essa classe não está sendo encontrada. Se ela não está sendo encontrada é por que não existe no projeto e vc precisa adiciona-la.
Nesse caso, procure onde encontrar essa classe: net.sf.cglib.proxy.Enhancer
Tem um site de busca de bibliotecas do java, o http://www.findjar.com

rodpuc

Vc deve adicionar alguma dependência que tenha essa classe no seu classpath.
Pude ver que o jar “cglib-2.2.jar” possui essa classe.

Agora vc adiciona ele igual vc teve que adicionar o jar do spring no seu projeto, vai depender de como vc faz isso (pelo maven, direto no eclipse, etc)

Criado 10 de janeiro de 2011
Ultima resposta 10 de jan. de 2011
Respostas 5
Participantes 4