IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Spring Java Discussion :

No qualifying bean found for dependency [org.apache.ibatis.session.SqlSession]


Sujet :

Spring Java

  1. #1
    Membre éclairé
    Inscrit en
    Mai 2003
    Messages
    351
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 351
    Par défaut No qualifying bean found for dependency [org.apache.ibatis.session.SqlSession]
    Bonjour. J'ai decoupés un projet en plusieurs modules(ici un module= un projet)
    j'ai 2 projets A et B dont B depend de A.

    projet A contient un fichier jdbc-context.xml

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
     
      <groupId>${parent.groupId}</groupId>
      <artifactId>A</artifactId>
      <packaging>jar</packaging>
      <version>${parent.version}</version>
      <name>SyGACUT Database</name>
     
      <parent>
        <groupId>org.laplace</groupId>
        <artifactId>P</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <relativePath>../SyGACUT/pom.xml</relativePath>
      </parent>  
    </projet>
    jdbc-context.xml

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    <?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:p="http://www.springframework.org/schema/p"
           xmlns:tx="http://www.springframework.org/schema/tx" 
           xmlns:aop="http://www.springframework.org/schema/aop"
           xmlns:mvc="http://www.springframework.org/schema/mvc"
           xmlns:context="http://www.springframework.org/schema/context"
           xsi:schemaLocation="http://www.springframework.org/schema/beans
           <a href="http://www.springframework.org/schema/beans/spring-beans-3.0.xsd" target="_blank">http://www.springframework.org/schem...-beans-3.0.xsd</a>
           <a href="http://www.springframework.org/schema/aop" target="_blank">http://www.springframework.org/schema/aop</a>
           <a href="http://www.springframework.org/schema/aop/spring-aop-3.0.xsd" target="_blank">http://www.springframework.org/schem...ng-aop-3.0.xsd</a>
           <a href="http://www.springframework.org/schema/mvc" target="_blank">http://www.springframework.org/schema/mvc</a> 
           <a href="http://www.springframework.org/schema/mvc/spring-mvc.xsd" target="_blank">http://www.springframework.org/schem...spring-mvc.xsd</a>
           <a href="http://www.springframework.org/schema/tx" target="_blank">http://www.springframework.org/schema/tx</a>
           <a href="http://www.springframework.org/schema/tx/spring-tx-3.0.xsd" target="_blank">http://www.springframework.org/schem...ing-tx-3.0.xsd</a>
           <a href="http://www.springframework.org/schema/context" target="_blank">http://www.springframework.org/schema/context</a>
           http://www.springframework.org/schema/context/spring-context-3.0.xsd">  
     
        <context:component-scan base-package="org.laplace" />
        <!-- <context:component-scan base-package="org.laplace.service" /> -->
     
        <!-- <context:property-placeholder location="/WEB-INF/jdbc.properties,/WEB-INF/mybatis/mybatis.properties" />-->
        <context:property-placeholder location="classpath:jdbc.properties,classpath:mybatis.properties" />
        <!-- Enable annotation style of managing transactions -->
        <tx:annotation-driven transaction-manager="transactionManager" />
     
        <!-- Declare a datasource that has pooling capabilities -->
        <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
          <property name="driverClassName" value="${jdbc.driverClassName}"/>
          <property name="url" value="${jdbc.url}"/>
          <property name="username" value="${jdbc.username}"/>
          <property name="password" value="${jdbc.password}"/>
        </bean>
     
        <!-- define the SqlSessionFactory, notice that configLocation is not needed when you use MapperFactoryBean -->
        <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
            <property name="dataSource" ref="dataSource" />
            <property name="typeAliasesPackage" value="org.laplace.model"/>
            <property name="mapperLocations" value="classpath*:org/laplace/mapper/**/*.xml" />
            <!-- <property name="configLocation" value="WEB-INF/mybatis/sqlmap-config.xml" /> -->
        </bean>
     
        <!-- <bean id="CutAgentService" class="org.laplace.service.CutAgentService"/> -->
     
        <bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate">
            <constructor-arg index="0" ref="sqlSessionFactory" />
        </bean>
     
        <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
            <property name="basePackage" value="org.laplace.mapper" />
        </bean>
     
        <!-- Declare a transaction manager -->
        <tx:annotation-driven transaction-manager="transactionManager"/>
     
        <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
           <property name="dataSource" ref="dataSource" />
        </bean>
     
     
        <!-- scan for mappers and let them be autowired -->
        <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
            <property name="basePackage" value="org.laplace.mapper" />
            <!-- <property name="basePackage" value="${MapperInterfacePackage}" /> -->
        </bean>
     
    </beans>

    projet B depend de A

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
      <modelVersion>4.0.0</modelVersion>
     
      <groupId>${parent.groupId}</groupId>
      <artifactId>B</artifactId>
      <packaging>war</packaging>
      <version>${parent.version}</version>
      <name>SyGACUT Web Poste Maven Webapp</name>
      <url>http://maven.apache.org</url>
     
      <parent>
        <groupId>org.laplace</groupId>
        <artifactId>A</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <relativePath>../P/pom.xml</relativePath>
      </parent>  
    </projet>
    je fais des test dans le projet a


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    package org.laplace.service;
     
    import java.util.List;
    import org.apache.ibatis.session.SqlSession;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.stereotype.Service;
    import org.springframework.transaction.annotation.Transactional;
     
    //import org.laplace.util.MyBatisUtil;
    import org.laplace.model.CutAgent;
    import org.laplace.dao.CutAgentMapper;
     
    @Service
    @Transactional
    public class CutAgentService {
     
    	@Autowired
    	private SqlSession sqlSession; //This is to demonstrate injecting SqlSession object
     
    	public void insertAgent(CutAgent agent) {
        	CutAgentMapper agentMapper = sqlSession.getMapper(CutAgentMapper.class);
     		agentMapper.insert(agent);
        	 /*SqlSession sqlSession = MyBatisUtil.getSqlSessionFactory().openSession();
            try {
    	        CutAgentMapper agentMapper = sqlSession.getMapper(CutAgentMapper.class);
    	        agentMapper.insert(agent);
                sqlSession.commit();
            } finally {
               sqlSession.close();
            }*/
         }
     
         public CutAgent getAgentById(String AgentId) {
        	 CutAgentMapper agentMapper = sqlSession.getMapper(CutAgentMapper.class);
        	 return agentMapper.selectByPrimaryKey(AgentId);
        	 /*SqlSession sqlSession = MyBatisUtil.getSqlSessionFactory().openSession();
        	 try {
        		 CutAgentMapper agentMapper = sqlSession.getMapper(CutAgentMapper.class);
                 return agentMapper.selectByPrimaryKey(AgentId);
             } finally {
                 sqlSession.close();
             }*/
         }
     
         public List<CutAgent> selectAllAgents() {
        	 CutAgentMapper agentMapper = sqlSession.getMapper(CutAgentMapper.class);
        	 return agentMapper.selectAllAgents();
        	 /*SqlSession sqlSession = MyBatisUtil.getSqlSessionFactory().openSession();
        	 try {
        		 CutAgentMapper agentMapper = sqlSession.getMapper(CutAgentMapper.class);
        		 return agentMapper.selectAllAgents();
             } finally {
            	 sqlSession.close();
             }*/
         }
     
         public void updateAgent(CutAgent agent) {
        	 CutAgentMapper agentMapper = sqlSession.getMapper(CutAgentMapper.class);
             agentMapper.updateByPrimaryKey(agent);
        	 /*SqlSession sqlSession = MyBatisUtil.getSqlSessionFactory().openSession();
             try {
    	         CutAgentMapper agentMapper = sqlSession.getMapper(CutAgentMapper.class);
    	         agentMapper.updateByPrimaryKey(Agent);
                 sqlSession.commit();
             } finally {
                 sqlSession.close();
             }*/
         }
     
         public void deleteAgent(String AgentId) {
        	 CutAgentMapper agentMapper = sqlSession.getMapper(CutAgentMapper.class);
    		 agentMapper.deleteByPrimaryKey(AgentId);
        	 /*SqlSession sqlSession = MyBatisUtil.getSqlSessionFactory().openSession();
        	 try {
        		 CutAgentMapper agentMapper = sqlSession.getMapper(CutAgentMapper.class);
        		 agentMapper.deleteByPrimaryKey(AgentId);
        		 sqlSession.commit();
             } finally {
            	 sqlSession.close();
             }*/
         }
    }


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    package org.laplace.test;
     
    import java.util.List;
     
    import org.junit.Assert;
    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 org.laplace.model.CutAgent;
    import org.laplace.dao.CutAgentMapper;
    import org.laplace.service.CutAgentService;
     
    @RunWith(SpringJUnit4ClassRunner.class)
    @ContextConfiguration(locations="classpath:jdbc-context.xml")
    public class SpringAgentServiceTest {
     
    	@Autowired
        private CutAgentService agentService;
     
        @Test
        public void testGetUserById() {
        	CutAgent agent = agentService.getAgentById("323465X");
        	Assert.assertNotNull(agent);
        	System.out.println(agent);
        }
     
        @Test
        public void testUpdateUser() {
        	long timestamp = System.currentTimeMillis();
        	CutAgent agent = agentService.getAgentById("323465X");
        	agent.setAGT_NOM("TestFirstName"+timestamp);
        	agent.setAGT_PRENOM("TestLastName"+timestamp);
        	agentService.updateAgent(agent);
        	CutAgent updatedUser = agentService.getAgentById("323465X");
        	Assert.assertEquals(agent.getAGT_NOM(), updatedUser.getAGT_NOM());
        	Assert.assertEquals(agent.getAGT_PRENOM(), updatedUser.getAGT_PRENOM());
        }
        //For Example: If we want to get count of how many records got updated by an Update query we can use SqlSession as follows:
        //int updatedRowCount = sqlSession.update("com.sivalabs.mybatisdemo.mappers.UserMapper.updateUser", agent);
     
    }
    et cela se deroule bien

    dans le projet b


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
             xmlns="http://java.sun.com/xml/ns/javaee" 
             xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
      <display-name>SyGACUTPosteComptable</display-name>
     
      <context-param>
         <param-name>contextConfigLocation</param-name>
         <param-value>/WEB-INF/laplace-servlet.xml</param-value>
      </context-param>
     
      <listener>
         <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
      </listener>
     
      <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>
      </welcome-file-list>
     
      <servlet>
         <servlet-name>laplace</servlet-name>
         <servlet-class> org.springframework.web.servlet.DispatcherServlet</servlet-class>
         <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/laplace-servlet.xml</param-value>
         </init-param>        
         <load-on-startup>1</load-on-startup>
      </servlet>
     
      <servlet-mapping>
    	 <servlet-name>laplace</servlet-name>
    	 <url-pattern>/</url-pattern>
      </servlet-mapping>
     
    </web-app>

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
    	   xmlns:mvc="http://www.springframework.org/schema/mvc" 
    	   xmlns:context="http://www.springframework.org/schema/context"
    	   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	   xsi:schemaLocation="
            <a href="http://www.springframework.org/schema/beans" target="_blank">http://www.springframework.org/schema/beans</a>     
            <a href="http://www.springframework.org/schema/beans/spring-beans.xsd" target="_blank">http://www.springframework.org/schem...ring-beans.xsd</a>
            <a href="http://www.springframework.org/schema/mvc" target="_blank">http://www.springframework.org/schema/mvc</a> 
            <a href="http://www.springframework.org/schema/mvc/spring-mvc.xsd" target="_blank">http://www.springframework.org/schem...spring-mvc.xsd</a>
            <a href="http://www.springframework.org/schema/context" target="_blank">http://www.springframework.org/schema/context</a> 
            http://www.springframework.org/schema/context/spring-context.xsd">
     
        <!-- <import resource="classpath:/META-INFSyGACUTDB/jdbc-context.xml"/> -->
        <mvc:default-servlet-handler/>
    	<mvc:annotation-driven/> 
    	<context:component-scan base-package="org.laplace">
           <context:include-filter type="regex" expression="(service|controller|validator)\..*"/>
        </context:component-scan>
     
    	<import resource="classpath*:META-INF/A/jdbc-context.xml" />
     
    	<!--  
    	<context:component-scan base-package="org.laplace.service" />
    	<context:component-scan base-package="org.laplace.controller" />
    	<context:component-scan base-package="org.laplace.validator" />
        -->  
     
    	<!-- Application Message Bundle -->
    	<bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
    		<property name="basename" value="/WEB-INF/resources/messages.properties" />
    		<property name="cacheSeconds" value="3000" />
    	</bean>	
     
    	<!-- Resolves view names to protected .jsp resources within the /WEB-INF/views directory -->
    	<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    		<property name="prefix" value="/WEB-INF/pages/"/>
    		<property name="suffix" value=".jsp"/>
    	</bean>
     
    </beans>

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    package org.laplace.validator;
     
    import org.springframework.stereotype.Component;
    import org.springframework.validation.Errors;
    import org.springframework.validation.ValidationUtils;
    import org.springframework.validation.Validator;
     
    import org.laplace.model.CutAgent;
     
    @Component
    public class RegistrationValidator implements Validator {
     
            public boolean supports(Class<?> c) {
                    return CutAgent.class.isAssignableFrom(c);
            }
     
            public void validate(Object command, Errors errors) {
                    ValidationUtils.rejectIfEmptyOrWhitespace(errors, "matricule", "field.matricule.empty");
                    ValidationUtils.rejectIfEmptyOrWhitespace(errors, "civilité", "field.civilite.empty");
                    ValidationUtils.rejectIfEmptyOrWhitespace(errors, "nom", "field.nom.empty");
                    ValidationUtils.rejectIfEmptyOrWhitespace(errors, "prenom", "field.prenom.empty");
                    ValidationUtils.rejectIfEmptyOrWhitespace(errors, "login", "field.login.empty");
                    ValidationUtils.rejectIfEmptyOrWhitespace(errors, "password", "field.password.empty");
                    //CutAgent agentBean = (CutAgent)command;
                    //if(!isNumber(agentBean.getAge().trim()))
                    //        errors.rejectValue("age", "field.age.NAN");
            }
     
            private boolean isNumber(String str){
                for (int i = 0; i < str.length(); i++) {
     
                    //If we find a non-digit character we return false.
                    if (!Character.isDigit(str.charAt(i)))
                    return false;
                    }
     
                    return true;
            }
    }

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    package org.laplace.controller;
     
    import java.util.ArrayList;
    import java.util.List;
    import java.util.UUID;
     
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.stereotype.Controller;
    import org.springframework.ui.ModelMap;
    import org.springframework.validation.BindingResult;
    import org.springframework.web.bind.annotation.ModelAttribute;
     
     
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RequestMethod;
    import org.springframework.web.servlet.ModelAndView;
     
    import org.laplace.model.CutAgent; 
    import org.laplace.service.CutAgentService;
    import org.laplace.validator.RegistrationValidator;
     
    @Controller
    @RequestMapping("/registration")
    public class RegistrationController {
     
    	private RegistrationValidator validator = null;
        private CutAgentService agentService = null;
     
        @Autowired
        public void setCutAgentService(CutAgentService agentService) {
                this.agentService = agentService;
        }
     
        public RegistrationValidator getValidator() {
                return validator;
        }
     
        @Autowired
        public void setValidator(RegistrationValidator validator) {
                this.validator = validator;
        }
     
    	@RequestMapping(method=RequestMethod.GET)
    	public ModelAndView helloWorld() {
    		List<CutAgent> agentbds = agentService.selectAllAgents();
    		List<CutAgent> agents = getList();
    		String message = "<br><div style='text-align:center;'>"
    		+ "<h3>********** Hello World, Spring MVC Tutorial</h3>Registration **********</div><br><br>";
    		return new ModelAndView("registration", "agents", agents);
    	}
     
    	private List<CutAgent> getList() {
     
    		List<CutAgent> list = new ArrayList<CutAgent>();
    		CutAgent a1 = new CutAgent();
    		a1.setAGT_MAT("3");
    		a1.setAGT_NOM("sssy");
    		a1.setAGT_PRENOM("xxx");
    		a1.setAGT_CIVILITE("Mr");
    		a1.setAGT_LOGIN("cut");
    		a1.setAGT_PWD("cut");
    		list.add(a1);
     
    		CutAgent a2 = new CutAgent();
    		a2.setAGT_MAT("2");
    		a2.setAGT_NOM("Bccc");
    		a2.setAGT_PRENOM("cccy");
    		a2.setAGT_CIVILITE("Mr");
    		a2.setAGT_LOGIN("demo");
    		a2.setAGT_PWD("demo");		
    		list.add(a2);
     
    		CutAgent a3 = new CutAgent();
    		a3.setAGT_MAT("1");
    		a3.setAGT_NOM("ddd");
    		a3.setAGT_PRENOM("xx");
    		a3.setAGT_CIVILITE("Mr");
    		a3.setAGT_LOGIN("x");
    		a3.setAGT_PWD("x");
    		list.add(a3);
     
    		return list;
    	}
    }

    et enfin le test

    package org.laplace.test;

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    import java.util.List;
     
    import org.junit.Assert;
    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 org.laplace.model.CutAgent;
    import org.laplace.service.CutAgentService;
     
    @RunWith(SpringJUnit4ClassRunner.class)
    @ContextConfiguration(locations="classpath:laplace-servlet.xml")
    public class SpringAgentServiceTest {
     
    	@Autowired
        private CutAgentService agentService;
     
        @Test
        public void testGetUserById() {
        	CutAgent agent = agentService.getAgentById("id");
        	Assert.assertNotNull(agent);
        	System.out.println(agent);
        }
     
        @Test
        public void testUpdateUser() {
        	long timestamp = System.currentTimeMillis();
        	CutAgent agent = agentService.getAgentById("id");
        	agent.setAGT_NOM("cvbcbbc");
        	agent.setAGT_PRENOM("ddddddd");
        	agentService.updateAgent(agent);
        	CutAgent updatedUser = agentService.getAgentById("id");
        	Assert.assertEquals(agent.getAGT_NOM(), updatedUser.getAGT_NOM());
        	Assert.assertEquals(agent.getAGT_PRENOM(), updatedUser.getAGT_PRENOM());
        }
        //For Example: If we want to get count of how many records got updated by an Update query we can use SqlSession as follows:
        //int updatedRowCount = sqlSession.update("com.sivalabs.mybatisdemo.mappers.UserMapper.updateUser", agent);
     
    }
    et là j'ai l'erreur

    oct. 27, 2016 10:19:53 AM org.springframework.test.context.support.DefaultTestContextBootstrapper getDefaultTestExecutionListenerClassNames
    INFOS: Loaded default TestExecutionListener class names from location [META-INF/spring.factories]: [org.springframework.test.context.web.ServletTestExecutionListener, org.springframework.test.context.support.DirtiesContextBeforeModesTestExecutionListener, org.springframework.test.context.support.DependencyInjectionTestExecutionListener, org.springframework.test.context.support.DirtiesContextTestExecutionListener, org.springframework.test.context.transaction.TransactionalTestExecutionListener, org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener]
    oct. 27, 2016 10:19:53 AM org.springframework.test.context.support.DefaultTestContextBootstrapper getTestExecutionListeners
    INFOS: Using TestExecutionListeners: [org.springframework.test.context.web.ServletTestExecutionListener@4a765, org.springframework.test.context.support.DirtiesContextBeforeModesTestExecutionListener@3e6358, org.springframework.test.context.support.DependencyInjectionTestExecutionListener@1550481, org.springframework.test.context.support.DirtiesContextTestExecutionListener@15f7ae5, org.springframework.test.context.transaction.TransactionalTestExecutionListener@bc464, org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener@124409e]
    oct. 27, 2016 10:19:53 AM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
    INFOS: Loading XML bean definitions from class path resource [laplace-servlet.xml]
    oct. 27, 2016 10:19:53 AM org.springframework.context.support.GenericApplicationContext prepareRefresh
    INFOS: Refreshing org.springframework.context.support.GenericApplicationContext@f5e5e3: startup date [Thu Oct 27 10:19:53 GMT 2016]; root of context hierarchy
    oct. 27, 2016 10:19:53 AM org.springframework.web.servlet.handler.SimpleUrlHandlerMapping registerHandler
    INFOS: Mapped URL path [/**] onto handler 'org.springframework.web.servlet.resource.DefaultServletHttpRequestHandler#0'
    oct. 27, 2016 10:19:53 AM org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping register
    INFOS: Mapped "{[/registration],methods=[GET]}" onto public org.springframework.web.servlet.ModelAndView org.laplace.controller.RegistrationController.helloWorld()
    oct. 27, 2016 10:19:53 AM org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping register
    INFOS: Mapped "{[/welcome]}" onto public org.springframework.web.servlet.ModelAndView org.laplace.controller.WelcomeController.helloWorld()
    oct. 27, 2016 10:19:54 AM org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter initControllerAdviceCache
    INFOS: Looking for @ControllerAdvice: org.springframework.context.support.GenericApplicationContext@f5e5e3: startup date [Thu Oct 27 10:19:53 GMT 2016]; root of context hierarchy
    oct. 27, 2016 10:19:54 AM org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter initControllerAdviceCache
    INFOS: Looking for @ControllerAdvice: org.springframework.context.support.GenericApplicationContext@f5e5e3: startup date [Thu Oct 27 10:19:53 GMT 2016]; root of context hierarchy
    oct. 27, 2016 10:19:54 AM org.springframework.context.support.GenericApplicationContext refresh
    AVERTISSEMENT: Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'registrationController': Unsatisfied dependency expressed through method 'setCutAgentService' parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'cutAgentService': Unsatisfied dependency expressed through field 'sqlSession'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean found for dependency [org.apache.ibatis.session.SqlSession]: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
    oct. 27, 2016 10:19:54 AM org.springframework.test.context.TestContextManager prepareTestInstance
    GRAVE: Caught exception while allowing TestExecutionListener [org.springframework.test.context.support.DependencyInjectionTestExecutionListener@1550481] to prepare test instance [org.laplace.test.SpringAgentServiceTest@3295b0]
    java.lang.IllegalStateException: Failed to load ApplicationContext
    	at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:124)
    	at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:83)
    	at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:117)
    	at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:83)
    	at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:230)
    	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:228)
    	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:287)
    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:289)
    	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:247)
    	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:94)
    	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
    	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
    	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.junit.runners.ParentRunner.run(ParentRunner.java:363)
    	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:191)
    	at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
    	at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
    	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
    	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
    	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
    	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
    Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'registrationController': Unsatisfied dependency expressed through method 'setCutAgentService' parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'cutAgentService': Unsatisfied dependency expressed through field 'sqlSession'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean found for dependency [org.apache.ibatis.session.SqlSession]: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
    	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredMethodElement.inject(AutowiredAnnotationBeanPostProcessor.java:648)
    	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:88)
    	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:349)
    	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1219)
    	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:543)
    	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
    	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
    	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
    	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
    	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
    	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:751)
    	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:861)
    	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:541)
    	at org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:128)
    	at org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:60)
    	at org.springframework.test.context.support.AbstractDelegatingSmartContextLoader.delegateLoading(AbstractDelegatingSmartContextLoader.java:108)
    	at org.springframework.test.context.support.AbstractDelegatingSmartContextLoader.loadContext(AbstractDelegatingSmartContextLoader.java:251)
    	at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:98)
    	at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:116)
    	... 25 more
    Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'cutAgentService': Unsatisfied dependency expressed through field 'sqlSession'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean found for dependency [org.apache.ibatis.session.SqlSession]: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
    	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:569)
    	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:88)
    	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:349)
    	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1219)
    	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:543)
    	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
    	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
    	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
    	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
    	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
    	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:207)
    	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1128)
    	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1056)
    	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredMethodElement.inject(AutowiredAnnotationBeanPostProcessor.java:640)
    	... 43 more
    Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean found for dependency [org.apache.ibatis.session.SqlSession]: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
    	at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoMatchingBeanFound(DefaultListableBeanFactory.java:1463)
    	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1094)
    	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1056)
    	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:566)
    	... 56 more
    
    oct. 27, 2016 10:19:54 AM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
    INFOS: Loading XML bean definitions from class path resource [laplace-servlet.xml]
    oct. 27, 2016 10:19:54 AM org.springframework.context.support.GenericApplicationContext prepareRefresh
    INFOS: Refreshing org.springframework.context.support.GenericApplicationContext@1045c6c: startup date [Thu Oct 27 10:19:54 GMT 2016]; root of context hierarchy
    oct. 27, 2016 10:19:54 AM org.springframework.web.servlet.handler.SimpleUrlHandlerMapping registerHandler
    INFOS: Mapped URL path [/**] onto handler 'org.springframework.web.servlet.resource.DefaultServletHttpRequestHandler#0'
    oct. 27, 2016 10:19:54 AM org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping register
    INFOS: Mapped "{[/registration],methods=[GET]}" onto public org.springframework.web.servlet.ModelAndView org.laplace.controller.RegistrationController.helloWorld()
    oct. 27, 2016 10:19:54 AM org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping register
    INFOS: Mapped "{[/welcome]}" onto public org.springframework.web.servlet.ModelAndView org.laplace.controller.WelcomeController.helloWorld()
    oct. 27, 2016 10:19:54 AM org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter initControllerAdviceCache
    INFOS: Looking for @ControllerAdvice: org.springframework.context.support.GenericApplicationContext@1045c6c: startup date [Thu Oct 27 10:19:54 GMT 2016]; root of context hierarchy
    oct. 27, 2016 10:19:54 AM org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter initControllerAdviceCache
    INFOS: Looking for @ControllerAdvice: org.springframework.context.support.GenericApplicationContext@1045c6c: startup date [Thu Oct 27 10:19:54 GMT 2016]; root of context hierarchy
    oct. 27, 2016 10:19:54 AM org.springframework.context.support.GenericApplicationContext refresh
    AVERTISSEMENT: Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'registrationController': Unsatisfied dependency expressed through method 'setCutAgentService' parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'cutAgentService': Unsatisfied dependency expressed through field 'sqlSession'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean found for dependency [org.apache.ibatis.session.SqlSession]: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
    oct. 27, 2016 10:19:54 AM org.springframework.test.context.TestContextManager prepareTestInstance
    GRAVE: Caught exception while allowing TestExecutionListener [org.springframework.test.context.support.DependencyInjectionTestExecutionListener@1550481] to prepare test instance [org.laplace.test.SpringAgentServiceTest@1be7b63]
    java.lang.IllegalStateException: Failed to load ApplicationContext
    	at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:124)
    	at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:83)
    	at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:117)
    	at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:83)
    	at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:230)
    	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:228)
    	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:287)
    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:289)
    	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:247)
    	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:94)
    	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
    	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
    	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.junit.runners.ParentRunner.run(ParentRunner.java:363)
    	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:191)
    	at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
    	at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
    	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
    	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
    	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
    	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
    Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'registrationController': Unsatisfied dependency expressed through method 'setCutAgentService' parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'cutAgentService': Unsatisfied dependency expressed through field 'sqlSession'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean found for dependency [org.apache.ibatis.session.SqlSession]: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
    	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredMethodElement.inject(AutowiredAnnotationBeanPostProcessor.java:648)
    	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:88)
    	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:349)
    	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1219)
    	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:543)
    	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
    	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
    	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
    	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
    	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
    	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:751)
    	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:861)
    	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:541)
    	at org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:128)
    	at org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:60)
    	at org.springframework.test.context.support.AbstractDelegatingSmartContextLoader.delegateLoading(AbstractDelegatingSmartContextLoader.java:108)
    	at org.springframework.test.context.support.AbstractDelegatingSmartContextLoader.loadContext(AbstractDelegatingSmartContextLoader.java:251)
    	at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:98)
    	at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:116)
    	... 25 more
    Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'cutAgentService': Unsatisfied dependency expressed through field 'sqlSession'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean found for dependency [org.apache.ibatis.session.SqlSession]: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
    	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:569)
    	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:88)
    	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:349)
    	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1219)
    	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:543)
    	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
    	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
    	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
    	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
    	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
    	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:207)
    	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1128)
    	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1056)
    	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredMethodElement.inject(AutowiredAnnotationBeanPostProcessor.java:640)
    	... 43 more
    Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean found for dependency [org.apache.ibatis.session.SqlSession]: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
    	at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoMatchingBeanFound(DefaultListableBeanFactory.java:1463)
    	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1094)
    	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1056)
    	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:566)
    	... 56 more

  2. #2
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Bonjour,

    Dans le fichier jdbc-context.xml, tu as déclaré deux fois la ligne
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    <tx:annotation-driven transaction-manager="transactionManager" />
    Supprime l'une d'entre eux.

    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    <import resource="classpath*:META-INF/A/jdbc-context.xml" />
    Remplace par
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    <import resource="classpath:META-INF/A/jdbc-context.xml" />
    Pour voir s'il arrive à trouver le fichier jdbc-context.xml, sinon ça va lancer une Exception.

    A+.

  3. #3
    Membre éclairé
    Inscrit en
    Mai 2003
    Messages
    351
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 351
    Par défaut
    qd je procèdes comme vous l'avez dit j'ai l'erreur suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
     
    oct. 27, 2016 3:00:50 PM org.springframework.test.context.support.DefaultTestContextBootstrapper getDefaultTestExecutionListenerClassNames
    INFOS: Loaded default TestExecutionListener class names from location [META-INF/spring.factories]: [org.springframework.test.context.web.ServletTestExecutionListener, org.springframework.test.context.support.DirtiesContextBeforeModesTestExecutionListener, org.springframework.test.context.support.DependencyInjectionTestExecutionListener, org.springframework.test.context.support.DirtiesContextTestExecutionListener, org.springframework.test.context.transaction.TransactionalTestExecutionListener, org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener]
    oct. 27, 2016 3:00:50 PM org.springframework.test.context.support.DefaultTestContextBootstrapper getTestExecutionListeners
    INFOS: Using TestExecutionListeners: [org.springframework.test.context.web.ServletTestExecutionListener@4a765, org.springframework.test.context.support.DirtiesContextBeforeModesTestExecutionListener@3e6358, org.springframework.test.context.support.DependencyInjectionTestExecutionListener@1550481, org.springframework.test.context.support.DirtiesContextTestExecutionListener@15f7ae5, org.springframework.test.context.transaction.TransactionalTestExecutionListener@bc464, org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener@124409e]
    oct. 27, 2016 3:00:50 PM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
    INFOS: Loading XML bean definitions from class path resource [laplace-servlet.xml]
    oct. 27, 2016 3:00:50 PM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
    INFOS: Loading XML bean definitions from class path resource [META-INF/SyGACUTDB/jdbc-context.xml]
    oct. 27, 2016 3:00:50 PM org.springframework.test.context.TestContextManager prepareTestInstance
    GRAVE: Caught exception while allowing TestExecutionListener [org.springframework.test.context.support.DependencyInjectionTestExecutionListener@1550481] to prepare test instance [org.laplace.test.SpringAgentServiceTest@18c99f5]
    java.lang.IllegalStateException: Failed to load ApplicationContext
    	at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:124)
    	at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:83)
    	at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:117)
    	at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:83)
    	at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:230)
    	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:228)
    	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:287)
    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:289)
    	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:247)
    	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:94)
    	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
    	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
    	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.junit.runners.ParentRunner.run(ParentRunner.java:363)
    	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:191)
    	at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
    	at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
    	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
    	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
    	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
    	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
    Caused by: org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Failed to import bean definitions from URL location [classpath:META-INF/SyGACUTDB/jdbc-context.xml]
    Offending resource: class path resource [laplace-servlet.xml]; nested exception is org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [META-INF/SyGACUTDB/jdbc-context.xml]; nested exception is java.io.FileNotFoundException: class path resource [META-INF/SyGACUTDB/jdbc-context.xml] cannot be opened because it does not exist
    	at org.springframework.beans.factory.parsing.FailFastProblemReporter.error(FailFastProblemReporter.java:70)
    	at org.springframework.beans.factory.parsing.ReaderContext.error(ReaderContext.java:85)
    	at org.springframework.beans.factory.parsing.ReaderContext.error(ReaderContext.java:76)
    	at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.importBeanDefinitionResource(DefaultBeanDefinitionDocumentReader.java:233)
    	at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseDefaultElement(DefaultBeanDefinitionDocumentReader.java:184)
    	at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:169)
    	at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.doRegisterBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:142)
    	at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:94)
    	at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:508)
    	at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:392)
    	at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:336)
    	at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:304)
    	at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:181)
    	at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:217)
    	at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:188)
    	at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:252)
    	at org.springframework.test.context.support.AbstractGenericContextLoader.loadBeanDefinitions(AbstractGenericContextLoader.java:257)
    	at org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:124)
    	at org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:60)
    	at org.springframework.test.context.support.AbstractDelegatingSmartContextLoader.delegateLoading(AbstractDelegatingSmartContextLoader.java:108)
    	at org.springframework.test.context.support.AbstractDelegatingSmartContextLoader.loadContext(AbstractDelegatingSmartContextLoader.java:251)
    	at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:98)
    	at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:116)
    	... 25 more
    Caused by: org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [META-INF/SyGACUTDB/jdbc-context.xml]; nested exception is java.io.FileNotFoundException: class path resource [META-INF/SyGACUTDB/jdbc-context.xml] cannot be opened because it does not exist
    	at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:344)
    	at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:304)
    	at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:181)
    	at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:217)
    	at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.importBeanDefinitionResource(DefaultBeanDefinitionDocumentReader.java:227)
    	... 44 more
    Caused by: java.io.FileNotFoundException: class path resource [META-INF/SyGACUTDB/jdbc-context.xml] cannot be opened because it does not exist
    	at org.springframework.core.io.ClassPathResource.getInputStream(ClassPathResource.java:172)
    	at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:330)
    	... 48 more
     
    oct. 27, 2016 3:00:50 PM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
    INFOS: Loading XML bean definitions from class path resource [laplace-servlet.xml]
    oct. 27, 2016 3:00:50 PM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
    INFOS: Loading XML bean definitions from class path resource [META-INF/SyGACUTDB/jdbc-context.xml]
    oct. 27, 2016 3:00:50 PM org.springframework.test.context.TestContextManager prepareTestInstance
    GRAVE: Caught exception while allowing TestExecutionListener [org.springframework.test.context.support.DependencyInjectionTestExecutionListener@1550481] to prepare test instance [org.laplace.test.SpringAgentServiceTest@1986957]
    java.lang.IllegalStateException: Failed to load ApplicationContext
    	at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:124)
    	at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:83)
    	at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:117)
    	at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:83)
    	at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:230)
    	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:228)
    	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:287)
    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:289)
    	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:247)
    	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:94)
    	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
    	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
    	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.junit.runners.ParentRunner.run(ParentRunner.java:363)
    	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:191)
    	at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
    	at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
    	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
    	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
    	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
    	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
    Caused by: org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Failed to import bean definitions from URL location [classpath:META-INF/SyGACUTDB/jdbc-context.xml]
    Offending resource: class path resource [laplace-servlet.xml]; nested exception is org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [META-INF/SyGACUTDB/jdbc-context.xml]; nested exception is java.io.FileNotFoundException: class path resource [META-INF/SyGACUTDB/jdbc-context.xml] cannot be opened because it does not exist
    	at org.springframework.beans.factory.parsing.FailFastProblemReporter.error(FailFastProblemReporter.java:70)
    	at org.springframework.beans.factory.parsing.ReaderContext.error(ReaderContext.java:85)
    	at org.springframework.beans.factory.parsing.ReaderContext.error(ReaderContext.java:76)
    	at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.importBeanDefinitionResource(DefaultBeanDefinitionDocumentReader.java:233)
    	at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseDefaultElement(DefaultBeanDefinitionDocumentReader.java:184)
    	at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:169)
    	at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.doRegisterBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:142)
    	at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:94)
    	at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:508)
    	at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:392)
    	at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:336)
    	at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:304)
    	at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:181)
    	at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:217)
    	at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:188)
    	at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:252)
    	at org.springframework.test.context.support.AbstractGenericContextLoader.loadBeanDefinitions(AbstractGenericContextLoader.java:257)
    	at org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:124)
    	at org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:60)
    	at org.springframework.test.context.support.AbstractDelegatingSmartContextLoader.delegateLoading(AbstractDelegatingSmartContextLoader.java:108)
    	at org.springframework.test.context.support.AbstractDelegatingSmartContextLoader.loadContext(AbstractDelegatingSmartContextLoader.java:251)
    	at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:98)
    	at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:116)
    	... 25 more
    Caused by: org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [META-INF/SyGACUTDB/jdbc-context.xml]; nested exception is java.io.FileNotFoundException: class path resource [META-INF/SyGACUTDB/jdbc-context.xml] cannot be opened because it does not exist
    	at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:344)
    	at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:304)
    	at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:181)
    	at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:217)
    	at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.importBeanDefinitionResource(DefaultBeanDefinitionDocumentReader.java:227)
    	... 44 more
    Caused by: java.io.FileNotFoundException: class path resource [META-INF/SyGACUTDB/jdbc-context.xml] cannot be opened because it does not exist
    	at org.springframework.core.io.ClassPathResource.getInputStream(ClassPathResource.java:172)
    	at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:330)
    	... 48 more

  4. #4
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    nested exception is java.io.FileNotFoundException: class path resource [META-INF/SyGACUTDB/jdbc-context.xml]
    C'est ça le vraie problème, il n'arrive pas à trouver le fichier jdbc-context.xml, donc spring n'injecte pas les beans déclarés dans ce fichier.
    Explication: En utilisant "classpath*:", ça retourne une liste de fichier, s'il trouve aucun fichier, tu auras une liste vide mais tu n'as pas d'erreur. Avec "classpath:", ça devrait obligatoirement retourner le fichier indiqué, comme il ne trouve pas le fichier, ça lance une exception FileNotFoundException, du coup, tu sais maintenant la cause du bug.
    Si le fichier jdbc-context.xml se trouve directement dans le répertoire META-INF du jar:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <import resource="classpath:META-INF/jdbc-context.xml" />
    Sinon, peut-on voir l’arborescence jusqu'au fichier jdbc-context.xml dans le jar du projet A?

    A+.

  5. #5
    Membre éclairé
    Inscrit en
    Mai 2003
    Messages
    351
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 351
    Par défaut
    le fichier se trouve dans le répertoire resource du projet A.
    Comment y accéder alors?

  6. #6
    Membre éclairé
    Inscrit en
    Mai 2003
    Messages
    351
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 351
    Par défaut
    voir le fichier doc pour la structure du jar et du fichier A.
    Je ne sais pas comment afficher directement les images donc j'ai fais un fichier joint.
    Merci
    Fichiers attachés Fichiers attachés

  7. #7
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    <import resource="classpath:jdbc-context.xml" />

    A+.

  8. #8
    Membre éclairé
    Inscrit en
    Mai 2003
    Messages
    351
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 351
    Par défaut
    c'est ok merci à tous

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Framework] Erreur "No qualifying bean of type found for dependency"
    Par shark59 dans le forum Spring
    Réponses: 5
    Dernier message: 04/06/2018, 00h55
  2. Réponses: 0
    Dernier message: 19/05/2012, 18h03
  3. Réponses: 2
    Dernier message: 09/09/2008, 14h24
  4. Réponses: 4
    Dernier message: 15/07/2008, 16h47
  5. Réponses: 4
    Dernier message: 17/07/2007, 13h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo