Problemas com Spring

Pois eh, ja tinha até colocado outro tópico sobre algumas dúvidas q tinha sobre Spring. Agora já estou com problemas. Como ja havia dito estou seguindo um livro para fazer o exemplo com Springs. E estou em uma parte onde ele, testa o código com o JUnit. Ai implementamos o teste do gravar. So que esta dando um error. Ja procurei em tudo qnt é lugar, ja refiz tudo do livro e não encontro aonde esta dando o erro.

O erro é este aki:

Testcase: gravar(facade.UsuarioFacadeTest): Caused an ERROR
Error creating bean with name ‘org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor#0’ defined in class path resource [applicationContext.xml]: Initialization of bean failed; nested exception is java.lang.IllegalStateException: No persistence exception translators found in bean factory. Cannot perform exception translation.
org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor#0’ defined in class path resource [applicationContext.xml]: Initialization of bean failed; nested exception is java.lang.IllegalStateException: No persistence exception translators found in bean factory. Cannot perform exception translation.
Related cause: org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [org.springframework.beans.factory.config. PropertyPlaceholderConfigurer] for bean with name ‘propertyConfigurer’ defined in class path resource [applicationContext.xml]; nested exception is java.lang.ClassNotFoundException: org.springframework.beans.factory.config. PropertyPlaceholderConfigurer
Related cause: org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [org.springframework.orm.jpa. LocalContainerEntityManagerFactoryBean] for bean with name ‘entityManagerFactory’ defined in class path resource [applicationContext.xml]; nested exception is java.lang.ClassNotFoundException: org.springframework.orm.jpa. LocalContainerEntityManagerFactoryBean
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:470)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:404)
at java.security.AccessController.doPrivileged(Native Method)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:375)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:263)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:170)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:260)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:184)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:163)
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:881)
at org.springframework.context.support.AbstractApplicationContext.registerBeanPostProcessors(AbstractApplicationContext.java:597)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:366)
at org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:139)
at org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:83)

E código de implementação do JUnit é este:

   /**
     * Test of gravar method, of class UsuarioFacade.
     */
    @Test
    public void gravar() {
        ApplicationContext context = new
                ClassPathXmlApplicationContext("applicationContext.xml");
        Usuario usuarioTeste = new Usuario();
        usuarioTeste.setLogin("guest");
        usuarioTeste.setNome("guest");
        usuarioTeste.setSenha("guest");
        
        System.out.println("gravar usuário");
        UsuarioFacade instance = (UsuarioFacade) context.getBean("usuarioFacade");
        
        Usuario result = instance.gravar(usuarioTeste);
        
        try{
            assertNotNull(result.getIdUsuario());
        }catch (AssertionError e){
            fail("Falhou a gravação do usuário.");
        }
        
    }

    /**
     * Test of excluir method, of class UsuarioFacade.
     */

Por favor alguém me de uma luz por favor.

tá, mas e o seu application context.xml como está?

Ae esta o applicationContext

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:aop="http://www.springframework.org/schema/aop"
       xmlns:tx="http://www.springframework.org/schema/tx"
       xsi:schemaLocation="http://www.springframework.org/schema/beans 
       http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
       http://www.springframework.org/schema/aop
       http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
       http://www.springframework.org/schema/tx
       http://www.springframework.org/schema/tx/spring-tx-2.0.xsd"> 
           
    <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="location" value="classpath:/jdbc.properties"/>
    </bean>
    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
        <property name="driverClass" value="${jdbc.driverClassName}"/>
        <property name="jdbcUrl" value="${jdbc.url}"/>
        <property name="user" value="${jdbc.username}"/>
        <property name="password" value="${jdbc.password}"/>
    </bean>
    <bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
        <property name="dataSource" ref="dataSource"/>
        <property name="jpaVendorAdapter">
            <bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
                <property name="showSql" value="true"/>
                <property name="genereteDd1" value="false"/>
                <property name="databasePlataform" value="org.hibernate.dialect.MySQL5Dialect"/>
            </bean>
        </property>
    </bean>
    <bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
        <property name="entityManagerFactory" ref="entityManagerFactory"/>
    </bean>
    <tx:annotation-driven/>
    <bean class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor"/>
    <bean class="org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor"/>
    
    <bean id="usuario" class="dominio.Usuario" scope="session" />
    <bean id="usuarioDAO" class="dao.UsuarioDAO" />
    <bean id="usuarioFacade" class="facade.UsuarioFacade">
        <property name="usuarioDAO" ref="usuarioDAO"/>
    </bean>
    
    <bean id="contato" class="dominio.Contato" scope="session" />
    <bean id="contatoDAO" class="dao.ContatoDAO" />
    <bean id="contatoFacade" class="facade.ContatoFacade">
        <property name="contatoDAO" ref="contatoDAO"/>
    </bean>
    
    <bean id="endereco" class="dominio.Endereco" scope="session" />
    <bean id="enderecoDAO" class="dao.EnderecoDAO" />
    <bean id="enderecoFacade" class="facade.EnderecoFacade">
        <property name="enderecoDAO" ref="enderecoDAO"/>
    </bean>
    
    <bean id="meioContato" class="dominio.MeioContato" scope="session" />
    <bean id="meioContatoDAO" class="dao.MeioContatoDAO" />
    <bean id="meioContatoFacade" class="facade.MeioContatoFacade">
        <property name="meioContatoDAO" ref="meioContatoDAO"/>
    </bean>
</beans>

up

Vou colocar aki a resolução do erro. Apesar de ter batido muita cabeça, enfim descobri o problema. Vou colocar aki, pq talvez no futuro alguém tenha o mesmo problema que eu tive, dai ja tem a solução aki.

O problema esta entre o teclado e a cadeira … logicamente o problema era eu … ahahahha …

Escrevi: genereteDd1
Certo: generateDdl

Escrevi: databasePlataform
Certo: databasePlatform

devido a letra, devo ter confundido, enfim … resolvido

/*

  • To change this template, choose Tools | Templates
  • and open the template in the editor.
    */

package facade;

import dao.UsuarioDao;
import dominio.Usuario;
import java.util.List;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import static org.junit.Assert.*;

/**
*

  • @author fbrisotto
    */
    public class UsuarioFacadeTest {

    public UsuarioFacadeTest() {
    }

    @BeforeClass
    public static void setUpClass() throws Exception {
    }

    @AfterClass
    public static void tearDownClass() throws Exception {
    }

    @Before
    public void setUp() {
    }

    @After
    public void tearDown() {
    }

    /**

    • Test of gravar method, of class UsuarioFacade.
      */
      @Test
      public void gravar() {
      System.out.println(“gravar”);
      ApplicationContext context = new ClassPathXmlApplicationContext(“applicationContext.xml”);
      Usuario usuarioTeste = new Usuario();
      usuarioTeste.setLogin(“teste”);
      usuarioTeste.setNome(“teste”);
      usuarioTeste.setSenha(“teste”);

      System.out.println(“Gravando usuário…”);

      UsuarioFacade instance = (UsuarioFacade)context.getBean(“usuarioFacade”);

      Usuario result = instance.gravar(usuarioTeste);

      try{
      assertNotNull(result.getIdUsuario());
      }catch (AssertionError e){
      fail(“Falhou a gravação de usuário”);
      }
      }

    /**

    • Test of excluir method, of class UsuarioFacade.
      */
      @Test
      public void excluir() {
      System.out.println(“excluir”);
      Usuario usuario = null;
      UsuarioFacade instance = new UsuarioFacade();
      instance.excluir(usuario);
      // TODO review the generated test code and remove the default call to fail.
      fail(“The test case is a prototype.”);
      }

    /**

    • Test of carregar method, of class UsuarioFacade.
      */
      @Test
      public void carregar() {
      System.out.println(“carregar”);
      Integer id = null;
      UsuarioFacade instance = new UsuarioFacade();
      Usuario expResult = null;
      Usuario result = instance.carregar(id);
      assertEquals(expResult, result);
      // TODO review the generated test code and remove the default call to fail.
      fail(“The test case is a prototype.”);
      }

    /**

    • Test of obterTodos method, of class UsuarioFacade.
      */
      @Test
      public void obterTodos() {
      System.out.println(“obterTodos”);
      UsuarioFacade instance = new UsuarioFacade();
      List expResult = null;
      List result = instance.obterTodos();
      assertEquals(expResult, result);
      // TODO review the generated test code and remove the default call to fail.
      fail(“The test case is a prototype.”);
      }

    /**

    • Test of obterPorNome method, of class UsuarioFacade.
      */
      @Test
      public void obterPorNome() {
      System.out.println(“obterPorNome”);
      String nome = “”;
      UsuarioFacade instance = new UsuarioFacade();
      List expResult = null;
      List result = instance.obterPorNome(nome);
      assertEquals(expResult, result);
      // TODO review the generated test code and remove the default call to fail.
      fail(“The test case is a prototype.”);
      }

    /**

    • Test of obterPorLogin method, of class UsuarioFacade.
      */
      @Test
      public void obterPorLogin() {
      System.out.println(“obterPorLogin”);
      String login = “”;
      UsuarioFacade instance = new UsuarioFacade();
      List expResult = null;
      List result = instance.obterPorLogin(login);
      assertEquals(expResult, result);
      // TODO review the generated test code and remove the default call to fail.
      fail(“The test case is a prototype.”);
      }

    /**

    • Test of obterPorLoginSenha method, of class UsuarioFacade.
      */
      @Test
      public void obterPorLoginSenha() {
      System.out.println(“obterPorLoginSenha”);
      String login = “”;
      String senha = “”;
      UsuarioFacade instance = new UsuarioFacade();
      List expResult = null;
      List result = instance.obterPorLoginSenha(login, senha);
      assertEquals(expResult, result);
      // TODO review the generated test code and remove the default call to fail.
      fail(“The test case is a prototype.”);
      }

    /**

    • Test of getUsuarioDao method, of class UsuarioFacade.
      */
      @Test
      public void getUsuarioDao() {
      System.out.println(“getUsuarioDao”);
      UsuarioFacade instance = new UsuarioFacade();
      UsuarioDao expResult = null;
      UsuarioDao result = instance.getUsuarioDao();
      assertEquals(expResult, result);
      // TODO review the generated test code and remove the default call to fail.
      fail(“The test case is a prototype.”);
      }

    /**

    • Test of setUsuarioDao method, of class UsuarioFacade.
      */
      @Test
      public void setUsuarioDao() {
      System.out.println(“setUsuarioDao”);
      UsuarioDao usuarioDao = null;
      UsuarioFacade instance = new UsuarioFacade();
      instance.setUsuarioDao(usuarioDao);
      // TODO review the generated test code and remove the default call to fail.
      fail(“The test case is a prototype.”);
      }

}

Estou lendo o mesmo livro (Java na Web com JSF, Spring, Hibernate e Netbeans 6) e tive o mesmo problema : )

Acredito que seja algum caractere perdido no XML, ou alterações na versão do Spring.

Notei as seguintes mensagens:

Related cause: org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [com.mchange.v2.c3p0.ComboPooledDataSource] for bean with name ‘dataSource’ defined in class path resource [applicationContext.xml];
Related cause: org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [org.springframework.orm.jpa.vendor.LocalContainerEntityManagerFactoryBean] for bean with name ‘entityManagerFactory’ defined in class path resource [applicationContext.xml];

Se alguém tiver alguma dica, agradeço.

Pessoal.
Eu refiz 3 vezes o exemplo do livro acima citado…
mas vou abrir outro tópico: