Netbeans 6.9 + Spting 3

1 resposta
G

Olá,

Estou realizando um teste com o Spring 3.0 utilizando o Netbeans 6.9.

Criei o DAO genérico e resolvi fazer o seguinte teste para analisar se está tudo funcionando:

package teste.dao.imp;

import teste.dao.CategoriaProdutoDao;
import teste.entity.CategoriaProduto;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import static org.junit.Assert.*;


@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(
   locations={"classpath:**/applicationContext*.xml"}
)
public class DaoGenericoImpTest {

    private CategoriaProdutoDao categoriaProdutoDao;
    private Long id = new Long(1);

    @Autowired
    public void setCategoriaProdutoDao(CategoriaProdutoDao categoriaProdutoDao){
        this.categoriaProdutoDao = categoriaProdutoDao;
    }

    private CategoriaProduto getCategoriaProduto(){
        CategoriaProduto categoriaProduto = new CategoriaProduto();
        categoriaProduto.setNome("Teste");
        return categoriaProduto;
    }
    
    @Test
    public void testSalvar(){
        CategoriaProduto categoriaProduto = null;
        categoriaProduto = categoriaProdutoDao.salvar(getCategoriaProduto());
        assertNotNull(categoriaProduto);
        assertEquals(id, categoriaProduto.getCatCodigo());
        assertEquals("Teste", categoriaProduto.getNome());
    }
}

Arquivo applicationContext*.xml :

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:tx="http://www.springframework.org/schema/tx"

       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
          http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
">
    <bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
        <property name="persistenceUnitName" value="estoque" />
    </bean>

    <bean class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor"/>

    <bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
        <property name="entityManagerFactory" ref="entityManagerFactory" />
    </bean>

    <tx:annotation-driven/>

    <bean id="categoriaProdutoDao" class="teste.dao.imp.CategoriaProdutoDaoImp" />
    <bean id="departamentoDao" class="teste.dao.imp.DepartamentoDaoImp" />
    <bean id="movimentoDao" class="teste.dao.imp.MovimentoDaoImp" />
    <bean id="produtoDao" class="teste.dao.imp.ProdutoDaoImp" />

</beans>

Código do Dao Generico:

package teste.dao.imp;

import teste.dao.DaoGenerico;
import java.io.Serializable;
import java.lang.reflect.ParameterizedType;
import java.util.List;
import java.util.Map;
import javax.persistence.EntityManager;
import javax.persistence.NoResultException;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;


@Transactional(readOnly=true,propagation=Propagation.REQUIRED)
public class DaoGenericoImp<T,ID extends Serializable> implements DaoGenerico<T, ID>{
    private EntityManager entityManager;

    private final Class<T> oClass;

    @Override
    public Class<T> getObjectClass(){
        return this.oClass;
    }

    @SuppressWarnings("unchecked")
    @PersistenceContext
    public void setEntityManager(EntityManager em){
        this.entityManager = em;
    }

    protected EntityManager getEntityManager(){
        if (entityManager == null)
            throw new IllegalStateException("Erro");
        return entityManager;
    }

    @SuppressWarnings("unchecked")
    public DaoGenericoImp(){
        this.oClass = (Class<T>)((ParameterizedType)getClass().getGenericSuperclass()).getActualTypeArguments()[0];
    }

    @Override
    @Transactional(readOnly=false,propagation=Propagation.REQUIRED)
    public T atualizar(T object){
        getEntityManager().merge(object);
        return object;
    }

    @Override
    @Transactional(readOnly=false,propagation=Propagation.REQUIRED)
    public void excluir(T object){
        object = getEntityManager().merge(object);
        getEntityManager().remove(object);
    }

    @Override
    @Transactional(readOnly=false,propagation=Propagation.REQUIRED)
    public T salvar(T object) {
        getEntityManager().clear();
        getEntityManager().persist(object);
        return object;
    }

    @Override
    public T pesquisarPorId(ID id) {
       return (T)getEntityManager().find(oClass, id);
    }

    @SuppressWarnings("unchecked")
    @Override
    public List<T> todos() {
        String queryS = "SELECT obj FROM "+ oClass.getSimpleName() + " obj";
        Query query = getEntityManager().createQuery(queryS);
        return query.getResultList();
    }

    @SuppressWarnings("unchecked")
    public List<T> listPesqParam(String query, Map<String, Object> params) {
        Query q = getEntityManager().createQuery(query);
        for(String chave:params.keySet()){
            q.setParameter(chave, params.get(chave));
        }
        return q.getResultList();
    }

    @SuppressWarnings("unchecked")
    @Override
    public List<T> listPesqParam(String query, Map<String, Object> params, int maximo, int atual) {
        Query q = getEntityManager().createQuery(query).setMaxResults(maximo).setFirstResult(atual);
        for(String chave:params.keySet()){
            q.setParameter(chave, params.get(chave));
        }
        return q.getResultList();
    }

    @SuppressWarnings("unchecked")
    @Override
    public List<T> listPesq(String query) {
        Query q = getEntityManager().createQuery(query);
        return q.getResultList();
    }

    @SuppressWarnings("unchecked")
    @Override
    public T pesqParam(String query, Map<String, Object> params) {
        Query q = getEntityManager().createNamedQuery(query);
        for(String chave:params.keySet()){
            q.setParameter(chave,params.get(chave));
        }
        try{
            return (T)q.getSingleResult();
        }catch(NoResultException nre){
            return null;
        }
    }
}

E quando executo me retorna o seguinte erro:

init:
deps-module-jar:
deps-ear-jar:
deps-jar:
library-inclusion-in-archive:
library-inclusion-in-manifest:
compile:
compile-test-single:
WARNING: multiple versions of ant detected in path for junit 
         jar:file:/home/gustavo/netbeans-6.9/java/ant/lib/ant.jar!/org/apache/tools/ant/Project.class
     and jar:file:/home/gustavo/sges-v3/glassfish/modules/ant.jar!/org/apache/tools/ant/Project.class
19/07/2010 08:36:40 org.springframework.test.context.TestContextManager retrieveTestExecutionListeners
INFO: @TestExecutionListeners is not present for class [class teste.dao.imp.DaoGenericoImpTest]: using defaults.
Testsuite: teste.dao.imp.DaoGenericoImpTest
19/07/2010 08:36:40 org.springframework.context.support.AbstractApplicationContext prepareRefresh
INFO: Refreshing org.springframework.context.support.GenericApplicationContext@12d96f2: startup date [Mon Jul 19 08:36:40 BRT 2010]; root of context hierarchy
19/07/2010 08:36:40 org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor <init>
INFO: JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
19/07/2010 08:36:40 org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons
INFO: Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@19b1de: defining beans [org.springframework.context.annotation.internalConfigurationAnnotationProcessor,org.springframework.context.annotation.internalAutowiredAnnotationProcessor,org.springframework.context.annotation.internalRequiredAnnotationProcessor,org.springframework.context.annotation.internalCommonAnnotationProcessor,org.springframework.context.annotation.internalPersistenceAnnotationProcessor]; root of factory hierarchy
19/07/2010 08:36:40 org.springframework.test.context.TestContextManager prepareTestInstance
SEVERE: Caught exception while allowing TestExecutionListener [org.springframework.test.context.support.DependencyInjectionTestExecutionListener@1d2b01b] to prepare test instance [teste.dao.imp.DaoGenericoImpTest@127fa12]
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'teste.dao.imp.DaoGenericoImpTest': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire method: public void teste.dao.imp.DaoGenericoImpTest.setCategoriaProdutoDao(teste.dao.CategoriaProdutoDao); nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [teste.dao.CategoriaProdutoDao] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {}
Tests run: 1, Failures: 0, Errors: 1, Time elapsed: 0,389 sec

------------- Standard Error -----------------
19/07/2010 08:36:40 org.springframework.test.context.TestContextManager retrieveTestExecutionListeners
INFO: @TestExecutionListeners is not present for class [class teste.dao.imp.DaoGenericoImpTest]: using defaults.
19/07/2010 08:36:40 org.springframework.context.support.AbstractApplicationContext prepareRefresh
INFO: Refreshing org.springframework.context.support.GenericApplicationContext@12d96f2: startup date [Mon Jul 19 08:36:40 BRT 2010]; root of context hierarchy
19/07/2010 08:36:40 org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor <init>
INFO: JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
19/07/2010 08:36:40 org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons
INFO: Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@19b1de: defining beans [org.springframework.context.annotation.internalConfigurationAnnotationProcessor,org.springframework.context.annotation.internalAutowiredAnnotationProcessor,org.springframework.context.annotation.internalRequiredAnnotationProcessor,org.springframework.context.annotation.internalCommonAnnotationProcessor,org.springframework.context.annotation.internalPersistenceAnnotationProcessor]; root of factory hierarchy
19/07/2010 08:36:40 org.springframework.test.context.TestContextManager prepareTestInstance
SEVERE: Caught exception while allowing TestExecutionListener [org.springframework.test.context.support.DependencyInjectionTestExecutionListener@1d2b01b] to prepare test instance [teste.dao.imp.DaoGenericoImpTest@127fa12]
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'teste.dao.imp.DaoGenericoImpTest': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire method: public void teste.dao.imp.DaoGenericoImpTest.setCategoriaProdutoDao(teste.dao.CategoriaProdutoDao); nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [teste.dao.CategoriaProdutoDao] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {}
        at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:286)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1064)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireBeanProperties(AbstractAutowireCapableBeanFactory.java:374)
        at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:110)
        at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:75)
        at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:333)
        at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:220)
        at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:301)
        at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
        at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:286)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1064)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireBeanProperties(AbstractAutowireCapableBeanFactory.java:374)
        at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:303)
        at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:240)
        at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:46)
        at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
        at org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
        at org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
        at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
        at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61)
        at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:110)
        at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:75)
        at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:333)
        at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:220)
        at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:301)
        at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
        at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:303)
        at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:240)
        at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:46)
        at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
        at org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
        at org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
        at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
        at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61)
        at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
        at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70)
        at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
        at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:180)
        at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
        at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:518)
        at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:1052)
        at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:906)
        at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
        at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70)
        at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
        at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:180)
        at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
        at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:518)
        at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:1052)
        at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:906)
Caused by: org.springframework.beans.factory.BeanCreationException: Could not autowire method: public void teste.dao.imp.DaoGenericoImpTest.setCategoriaProdutoDao(teste.dao.CategoriaProdutoDao); nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [teste.dao.CategoriaProdutoDao] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {}
        at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredMethodElement.inject(AutowiredAnnotationBeanPostProcessor.java:608)
        at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:84)
        at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:283)
        ... 24 more
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [teste.dao.CategoriaProdutoDao] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {}
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoSuchBeanDefinitionException(DefaultListableBeanFactory.java:903)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:772)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:686)
        at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredMethodElement.inject(AutowiredAnnotationBeanPostProcessor.java:559)
        ... 26 more
------------- ---------------- ---------------
Testcase: testSalvar(teste.dao.imp.DaoGenericoImpTest):        Caused an ERROR
Error creating bean with name 'teste.dao.imp.DaoGenericoImpTest': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire method: public void teste.dao.imp.DaoGenericoImpTest.setCategoriaProdutoDao(teste.dao.CategoriaProdutoDao); nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [teste.dao.CategoriaProdutoDao] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {}
Caused by: org.springframework.beans.factory.BeanCreationException: Could not autowire method: public void teste.dao.imp.DaoGenericoImpTest.setCategoriaProdutoDao(teste.dao.CategoriaProdutoDao); nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [teste.dao.CategoriaProdutoDao] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {}
        at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredMethodElement.inject(AutowiredAnnotationBeanPostProcessor.java:608)
        at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:84)
        at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:283)
        ... 24 more
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [teste.dao.CategoriaProdutoDao] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {}
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoSuchBeanDefinitionException(DefaultListableBeanFactory.java:903)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:772)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:686)
        at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredMethodElement.inject(AutowiredAnnotationBeanPostProcessor.java:559)
        ... 26 more
19/07/2010 08:36:41 org.springframework.context.support.AbstractApplicationContext doClose
INFO: Closing org.springframework.context.support.GenericApplicationContext@12d96f2: startup date [Mon Jul 19 08:36:40 BRT 2010]; root of context hierarchy
19/07/2010 08:36:41 org.springframework.beans.factory.support.DefaultSingletonBeanRegistry destroySingletons
INFO: Destroying singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@19b1de: defining beans [org.springframework.context.annotation.internalConfigurationAnnotationProcessor,org.springframework.context.annotation.internalAutowiredAnnotationProcessor,org.springframework.context.annotation.internalRequiredAnnotationProcessor,org.springframework.context.annotation.internalCommonAnnotationProcessor,org.springframework.context.annotation.internalPersistenceAnnotationProcessor]; root of factory hierarchy
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'teste.dao.imp.DaoGenericoImpTest': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire method: public void teste.dao.imp.DaoGenericoImpTest.setCategoriaProdutoDao(teste.dao.CategoriaProdutoDao); nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [teste.dao.CategoriaProdutoDao] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {}
        at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:286)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1064)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireBeanProperties(AbstractAutowireCapableBeanFactory.java:374)
        at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:110)
        at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:75)
        at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:333)
        at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:220)
        at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:301)
        at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:303)
        at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:240)
        at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61)
        at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70)
        at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:180)
Caused by: org.springframework.beans.factory.BeanCreationException: Could not autowire method: public void teste.dao.imp.DaoGenericoImpTest.setCategoriaProdutoDao(teste.dao.CategoriaProdutoDao); nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [teste.dao.CategoriaProdutoDao] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {}
        at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredMethodElement.inject(AutowiredAnnotationBeanPostProcessor.java:608)
        at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:84)
        at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:283)
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [teste.dao.CategoriaProdutoDao] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {}
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoSuchBeanDefinitionException(DefaultListableBeanFactory.java:903)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:772)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:686)
        at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredMethodElement.inject(AutowiredAnnotationBeanPostProcessor.java:559)


Test teste.dao.imp.DaoGenericoImpTest FAILED
/home/gustavo/java/NetBeansProjects/EstoqueWeb3/nbproject/build-impl.xml:907: Some tests failed; see details above.
FALHA NA CONSTRUÇÃO (tempo total: 4 segundos)

No projeto foi adicionada a biblioteca “Spring Framework 3.0.2.RELEASE”, que acompanha o próprio netbeans 6.9.

Já fiz vários testes e pesquisa, mas não consegui resolver o problema, se alguém puder me ajudar ficarei bem agradecido.

1 Resposta

G

Olá Pessoal,

Alguém tem ideia do que pode ser esse erro?

Grato!

Criado 19 de julho de 2010
Ultima resposta 20 de jul. de 2010
Respostas 1
Participantes 1