Exception in thread "main" org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'actelService'
<p>I am doing spring + hibernate application. There is a similar question but the accepted solution did not apply.</p>

<p>In detail:</p>

<p>java project:</p>

<p><strong>com.springJPA.domain</strong></p>

<p>-Actels.java</p>

<p>-Adresse.java</p>

<p>-Region.java</p>

<p>-Ville.java</p>

<p>-Utilisateur.java ...</p>

<p><strong>com.springJPA.service</strong></p>

<p>-ActelsService.java</p>

<p>-AdresseService.java</p>

<p>-RegionService.java</p>

<p>-VilleService.java</p>

<p>-UtilisateurService.java</p>

<p>-DAOfonction.java (interface)</p>

<p>-FonctionDAO.java (implements DAOfonction)
 ...</p>

<p><strong>com.springJPA.util</strong></p>

<p>-MyEntityManagerFactory.java</p>

<p>-TransactionAspect.java ...</p>

<p><strong>com.springJPA.test</strong></p>

<p>-Main.java</p>

<p>The error I am getting is this:</p>

<pre><code>févr. 16, 2016 11:54:09 AM org.springframework.context.support.AbstractApplicationContext prepareRefresh
    Infos: Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@9446e4: startup date [Tue Feb 16 11:54:09 WAT 2016]; root of context hierarchy
    févr. 16, 2016 11:54:09 AM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
    Infos: Loading XML bean definitions from class path resource [application-context.xml]
    févr. 16, 2016 11:54:10 AM org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons
    Infos: Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@176982e: 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,actelService,adresseService,demandeService,fonctionDAO,regionService,utilisateurService,villeService,myEMF_appActel,tr,org.springframework.aop.config.internalAutoProxyCreator,adrPC,utlPC,rgPC,villePC,actelPC,org.springframework.aop.aspectj.AspectJPointcutAdvisor#0,org.springframework.aop.aspectj.AspectJPointcutAdvisor#1,org.springframework.aop.aspectj.AspectJPointcutAdvisor#2,org.springframework.aop.aspectj.AspectJPointcutAdvisor#3,org.springframework.aop.aspectj.AspectJPointcutAdvisor#4,org.springframework.aop.aspectj.AspectJPointcutAdvisor#5,org.springframework.aop.aspectj.AspectJPointcutAdvisor#6,org.springframework.aop.aspectj.AspectJPointcutAdvisor#7,org.springframework.aop.aspectj.AspectJPointcutAdvisor#8,org.springframework.aop.aspectj.AspectJPointcutAdvisor#9]; root of factory hierarchy
    févr. 16, 2016 11:54:10 AM org.springframework.beans.factory.support.DefaultSingletonBeanRegistry destroySingletons
    Infos: Destroying singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@176982e: 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,actelService,adresseService,demandeService,fonctionDAO,regionService,utilisateurService,villeService,myEMF_appActel,tr,org.springframework.aop.config.internalAutoProxyCreator,adrPC,utlPC,rgPC,villePC,actelPC,org.springframework.aop.aspectj.AspectJPointcutAdvisor#0,org.springframework.aop.aspectj.AspectJPointcutAdvisor#1,org.springframework.aop.aspectj.AspectJPointcutAdvisor#2,org.springframework.aop.aspectj.AspectJPointcutAdvisor#3,org.springframework.aop.aspectj.AspectJPointcutAdvisor#4,org.springframework.aop.aspectj.AspectJPointcutAdvisor#5,org.springframework.aop.aspectj.AspectJPointcutAdvisor#6,org.springframework.aop.aspectj.AspectJPointcutAdvisor#7,org.springframework.aop.aspectj.AspectJPointcutAdvisor#8,org.springframework.aop.aspectj.AspectJPointcutAdvisor#9]; root of factory hierarchy
    Exception in thread "main" org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'actelService': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.springJPA.util.MyEntityManagerFactory com.springJPA.service.ActelsService.emf; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [com.springJPA.util.MyEntityManagerFactory] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true), @org.springframework.beans.factory.annotation.Qualifier(value=myEMF)}
        at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:286)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1055)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:511)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:450)
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:290)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:287)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:189)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:562)
        at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:871)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:423)
        at org.springframework.context.support.ClassPathXmlApplicationContext.&lt;init&gt;(ClassPathXmlApplicationContext.java:139)
        at org.springframework.context.support.ClassPathXmlApplicationContext.&lt;init&gt;(ClassPathXmlApplicationContext.java:83)
        at com.springJPA.test.Main.main(Main.java:19)
    Caused by: org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.springJPA.util.MyEntityManagerFactory com.springJPA.service.ActelsService.emf; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [com.springJPA.util.MyEntityManagerFactory] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true), @org.springframework.beans.factory.annotation.Qualifier(value=myEMF)}
        at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:507)
        at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:84)
        at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:283)
        ... 13 more
    Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [com.springJPA.util.MyEntityManagerFactory] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true), @org.springframework.beans.factory.annotation.Qualifier(value=myEMF)}
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoSuchBeanDefinitionException(DefaultListableBeanFactory.java:901)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:770)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:685)
        at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:478)
        ... 15 more
</code></pre>

<p>Main.java</p>

<pre><code>    package com.springJPA.test;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import com.springJPA.service.ActelsService;
import com.springJPA.service.AdresseService;
import com.springJPA.service.FonctionDAO;
import com.springJPA.service.RegionService;
import com.springJPA.service.UtilisateurService;
import com.springJPA.service.VilleService;

public class Main {

    /**
     * @param args
     */
    public static void main(String[] args) {
        ApplicationContext context = new ClassPathXmlApplicationContext("application-context.xml");
        UtilisateurService utlService = (UtilisateurService) context.getBean("utilisateurService");
        AdresseService adrService = (AdresseService) context.getBean("adresseService");
        RegionService rgService = (RegionService) context.getBean("regionService");
        VilleService villeService = (VilleService) context.getBean("villeService");
        ActelsService atlService = (ActelsService) context.getBean("actelService");

        FonctionDAO fonctionDAO = new FonctionDAO();
        fonctionDAO.createUTILISATEUR(utlService);
        fonctionDAO.createADRESSE(adrService);
        fonctionDAO.createREGION(rgService);
        fonctionDAO.afficherLISTE_REGION();
        fonctionDAO.afficherNOM_REGION_PAR_ID(52);
        fonctionDAO.afficherNOM_REGION_PAR_NUM(10);
        fonctionDAO.createACTEL(atlService);
        fonctionDAO.afficherLISTE_ACTEL();
        fonctionDAO.afficherLISTE_ACTEL_PAR_REGION(52);
        fonctionDAO.createVILLE(villeService);
        fonctionDAO.afficherNOM_VILLE_PAR_NUM(10);
        fonctionDAO.afficherLISTE_VILLE();
        fonctionDAO.afficherLISTE_VILLE_PAR_ACTEL(52);
    }
}
</code></pre>

<p>application-context.xml:</p>

<pre><code> &lt;?xml version="1.0" ?&gt;
&lt;beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:jee="http://www.springframework.org/schema/jee"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.0.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd"&gt;
&lt;context:annotation-config/&gt;
&lt;context:component-scan base-package="com.springJPA.service"/&gt;
&lt;context:component-scan base-package="com.springJPA.util"/&gt;
&lt;bean id="tr" class="com.springJPA.util.TransactionAspect"&gt;
    &lt;property name="entityManagerFactory" ref="myEMF"/&gt;
&lt;/bean&gt;

&lt;aop:config&gt;
    &lt;aop:pointcut expression="execution(* com.springJPA.service.AdresseService.*(..))" id="adrPC"/&gt;
    &lt;aop:pointcut expression="execution(* com.springJPA.service.UtilisateurService.*(..))" id="utlPC"/&gt;
    &lt;aop:pointcut expression="execution(* com.springJPA.service.RegionService.*(..))" id="rgPC"/&gt;
    &lt;aop:pointcut expression="execution(* com.springJPA.service.VilleService.*(..))" id="villePC"/&gt;
    &lt;aop:pointcut expression="execution(* com.springJPA.service.ActelsService.*(..))" id="actelPC"/&gt;
    &lt;aop:aspect ref="tr"&gt;
     &lt;aop:before pointcut-ref="adrPC" method="begin"&gt;&lt;/aop:before&gt;
     &lt;aop:after pointcut-ref="adrPC" method="commit"&gt;&lt;/aop:after&gt;

     &lt;aop:before pointcut-ref="utlPC" method="begin"&gt;&lt;/aop:before&gt;
     &lt;aop:after pointcut-ref="utlPC" method="commit"&gt;&lt;/aop:after&gt; 

     &lt;aop:before pointcut-ref="rgPC" method="begin"&gt;&lt;/aop:before&gt;
     &lt;aop:after pointcut-ref="rgPC" method="commit"&gt;&lt;/aop:after&gt;

     &lt;aop:before pointcut-ref="villePC" method="begin"&gt;&lt;/aop:before&gt;
     &lt;aop:after pointcut-ref="villePC" method="commit"&gt;&lt;/aop:after&gt;                 

     &lt;aop:before pointcut-ref="actelPC" method="begin"&gt;&lt;/aop:before&gt;
     &lt;aop:after pointcut-ref="actelPC" method="commit"&gt;&lt;/aop:after&gt;
    &lt;/aop:aspect&gt;
 &lt;/aop:config&gt;
&lt;/beans&gt;
</code></pre>

<p>ActelsService.java(AdresseService, RegionService, UtilisateurService are the same code just the function and query are different)</p>

<pre><code>package com.springJPA.service;

import java.util.List;

import javax.persistence.EntityManager;
import javax.persistence.TypedQuery;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Component;

import com.springJPA.domain.Actels;
import com.springJPA.util.MyEntityManagerFactory;

@Component("actelService")
public class ActelsService {
    @Autowired @Qualifier("myEMF")
    private MyEntityManagerFactory emf;
    private EntityManager entityManager;

    public void ajoutActel(Actels actel) {
        entityManager = emf.getEntityManager();
        entityManager.persist(actel);
    }
    public void modifActel(Actels actel) {
        entityManager = emf.getEntityManager();
        entityManager.merge(actel);

    }
    public void supprimerActel(Actels actel) {
        entityManager = emf.getEntityManager();
        entityManager.remove(actel);
    }
    public List&lt;String&gt; listeActel() {
        entityManager = emf.getEntityManager();
        TypedQuery&lt;String&gt; query = entityManager.createQuery("Select DISTINCT LOWER(e.nom_actel) from Actels e ORDER BY e.id_actels ASC", String.class);
        List&lt;String&gt; results = query.getResultList();
        return results;
    }

    /**
     * listeActel
     * @param id_region
     * @return
     */
    public List&lt;String&gt; listeActelParID_REGION(int id_region) {
        entityManager = emf.getEntityManager();
        TypedQuery&lt;String&gt; query = entityManager.createQuery("Select DISTINCT LOWER(e.nom_actel) from Actels e where e.region_id_region = ?1 ORDER BY e.id_actels ASC", String.class);
        query.setParameter("1", id_region);
        List&lt;String&gt; results = query.getResultList();
        return results;
    }

    public EntityManager getEntityManager() {
        return entityManager;
    }

    public void setEntityManager(EntityManager entityManager) {
        this.entityManager = entityManager;
    }

    public MyEntityManagerFactory getEmf() {
        return emf;
    }

    public void setEmf(MyEntityManagerFactory emf) {
        this.emf = emf;
    }
}
</code></pre>

<p>DAOfonction.java</p>

<pre><code>public interface DAOfonction {
.
.
.

public void createUTILISATEUR(UtilisateurService utlService);
    public void createADRESSE(AdresseService adrService);
    public void createREGION(RegionService rgService);
    public void createACTEL(ActelsService atlService);
    public void createVILLE(VilleService villeService);

    public List&lt;String&gt; afficherLISTE_REGION();
    public String afficherNOM_REGION_PAR_ID(int id_region);
    public String afficherNOM_REGION_PAR_NUM(int num_region);
    public String afficherNOM_VILLE_PAR_NUM(int num_ville);
    public List&lt;String&gt; afficherLISTE_ACTEL();
    public List&lt;String&gt; afficherLISTE_ACTEL_PAR_REGION(int id_region);
    public List&lt;String&gt; afficherLISTE_VILLE();
    public List&lt;String&gt; afficherLISTE_VILLE_PAR_ACTEL(int id_actel);

}
</code></pre>

<p>FonctionDAO.java</p>

<pre><code>public class FonctionDAO implements DAOfonction {
.
.
.
public List&lt;String&gt; afficherLISTE_VILLE_PAR_ACTEL(int id_actel) {
    ApplicationContext context = new ClassPathXmlApplicationContext("application-context.xml");
    VilleService atlService = (VilleService) context.getBean("villeService");
    List&lt;String&gt; listeVilleParActel= atlService.listeVilleParID_ACTEL(id_actel);
     for(String e:listeVilleParActel) {
         System.out.println("Ville par actel :"+e);
      }
    return listeVilleParActel;      
}

public String afficherNOM_VILLE_PAR_NUM(int num_ville) {
    ApplicationContext context = new ClassPathXmlApplicationContext("application-context.xml");
    VilleService villeService = (VilleService) context.getBean("villeService");

    System.out.println("Nom Ville par num: "+villeService.getNomVilleParNUM_VILLE(num_ville));
    return villeService.getNomVilleParNUM_VILLE(num_ville);
}

public String afficherNOM_REGION_PAR_NUM(int num_region) {
    ApplicationContext context = new ClassPathXmlApplicationContext("application-context.xml");
    RegionService rgService = (RegionService) context.getBean("rgService");
    System.out.println("Nom Region par num: "+rgService.getNomRegionParNUM_REGION(num_region));
    return rgService.getNomRegionParNUM_REGION(num_region);
}

public String afficherNOM_REGION_PAR_ID(int id_region) {
    ApplicationContext context = new ClassPathXmlApplicationContext("application-context.xml");
    RegionService rgService = (RegionService) context.getBean("rgService");

    System.out.println("Nom Region par id: "+rgService.getNomRegionParID_REGION(id_region));
    return rgService.getNomRegionParID_REGION(id_region);
}
public List&lt;String&gt; afficherLISTE_ACTEL_PAR_REGION(int id_region) {
    ApplicationContext context = new ClassPathXmlApplicationContext("application-context.xml");
    ActelsService atlService = (ActelsService) context.getBean("atlService");
    List&lt;String&gt; listeActelparRegion= atlService.listeActelParID_REGION(id_region);
     for(String e:listeActelparRegion) {
         System.out.println("Actel par region :"+e);
      }
    return listeActelparRegion;
}
public List&lt;String&gt; afficherLISTE_ACTEL() {
    ApplicationContext context = new ClassPathXmlApplicationContext("application-context.xml");
    ActelsService atlService = (ActelsService) context.getBean("atlService");
    List&lt;String&gt; listeActel= atlService.listeActel();
     for(String e:listeActel) {
         System.out.println("Actel :"+e);
      }
    return listeActel;
}

public List&lt;String&gt; afficherLISTE_VILLE() {
    ApplicationContext context = new ClassPathXmlApplicationContext("application-context.xml");
    VilleService villeService = (VilleService) context.getBean("villeService");
    List&lt;String&gt; listeVille= villeService.listeVille();
      for(String e:listeVille) {
             System.out.println("Ville :"+e);
          }
    return listeVille;
}

public List&lt;String&gt; afficherLISTE_REGION() {
    ApplicationContext context = new          ClassPathXmlApplicationContext("application-context.xml");
    RegionService rgService = (RegionService) context.getBean("rgService");
    List&lt;String&gt; listeRegion= rgService.listeRegion();
      for(String e:listeRegion) {
             System.out.println("Region :"+e);
          }
    return listeRegion;
}

public void createUTILISATEUR(UtilisateurService utlService) {
    creatUtilisateur(utlService, 1, "user1", "user1", "user1");
    creatUtilisateur(utlService, 2, "user2", "user2", "user2");
}

public void creatUtilisateur(UtilisateurService utlService, int id_utilisateur, String nom, String nom_utilisateur, String motdepasse) {
    Utilisateur utilisateur = new Utilisateur();
    utilisateur.setNom(nom);
    utilisateur.setNomUtilisateur(nom_utilisateur);
    utilisateur.setMotdepasse(motdepasse);
    utlService.ajoutUtilisateur(utilisateur);
}
public void createADRESSE(AdresseService adrService) {
    createAdresse(adrService, 1,"kantawi", "Sousse", "Tunisie");
    createAdresse(adrService, 2,"kantawi2", "Sousse2", "Tunisie2");
}
public void createAdresse(AdresseService adrService, int id_adresse, String rue, String ville, String pays) {
    Adresse adresse = new Adresse();
    adresse.setRue(rue);
    adresse.setVille(ville);
    adresse.setPays(pays);
    adrService.ajoutAdresse(adresse);
}

public void createACTEL(ActelsService atlService) {
    createActel(atlService, 1, 1, "actel_borjlouzir", 0x002);
    createActel(atlService, 2, 1, "actel_ariana", 0x001);
    createActel(atlService, 3, 2, "actel_mjezelbeb", 0x004);
    createActel(atlService, 4, 2, "actel_beja", 0x003);
    createActel(atlService, 5, 3, "actel_ezzahra", 0x048);
    createActel(atlService, 6, 3, "actel_rades", 0x006);
    createActel(atlService, 7, 3, "actel_benarous", 0x005);
    createActel(atlService, 8, 4, "actel_mzbourguib", 0x008);
    createActel(atlService, 9, 5, "actel_bizerte", 0x007);
    createActel(atlService, 10, 6, "actel_gabessud",0x010);
    createActel(atlService, 11, 6, "actel_gabes",0x009);
    createActel(atlService, 12, 6, "actel_elhammat",0x011);
    createActel(atlService, 13, 7, "actel_gafsa",0x012);
    createActel(atlService, 14, 8, "actel_kairouan",0x013);
    createActel(atlService, 15, 8, "actel_baytelhekm",0x014);
    createActel(atlService, 16, 9, "actel_sbitla",0x016);
    createActel(atlService, 17, 9, "actel_kasserine",0x015);
    createActel(atlService, 18, 10, "actel_kebili",0x017);
}
public void createVILLE(VilleService villeService) {
    createVille(villeService, 1, 1, "borjlouzir", 0x000, "rue", "RUE MUSTAPHA MOH", "R_Semiramis");
    createVille(villeService, 2, 1, "borjlouzir", 0x000, "rue", "Rue Abderrazek J", "R_El Ahmadi");
    createVille(villeService, 3, 1, "borjlouzir", 0x000, "rue", "Rue DE VARSOVIE", "R_NADA");
    createVille(villeService, 4, 1, "borjlouzir", 0x000, "rue", "Rue Jawhara", "R_Emma");
    createVille(villeService, 5, 2, "ariana", 0x000, "rue", "Rue Abderrahmen ", "R_MALEK");
    createVille(villeService, 6, 2, "ariana", 0x000, "rue", "Rue Belhassen", "R_les Reves");
    createVille(villeService, 7, 2, "ariana", 0x000, "rue", "Rue Fethi Zouhei", "R_Ennour");
    createVille(villeService, 8, 2, "ariana", 0x000, "avenue", "Ave Taieb MHiri", "R_YASMINA");
    createVille(villeService, 9, 2, "ariana", 0x000, "avenue", "Ave Hédi Nouira", "R_les Jasmins");
    createVille(villeService, 10, 3, "mjezelbeb", 0x000, "rue", "Rue Abderrahmen", "R_E");
    createVille(villeService, 11, 42, "kalaa_Kebira", 0x000, "rue", "RUE 1ER JUIN", "R_El Ahmadi");
    createVille(villeService, 12, 54, "manar", 0x000, "rue", "Rue de", "");
    createVille(villeService, 13, 43, "Kalaa_Essghi", 0x000, "rue", "Rue de", "");
    createVille(villeService, 14, 42, "kalaa_Kebira", 0x000, "rue", "RUE 1ER JUIN", "R_MALEK");
    createVille(villeService, 15, 42, "kalaa_Kebira", 0x000, "rue", "Rue Abderrazek E", "R_Ennour");
    createVille(villeService, 16, 42, "kalaa_Kebira", 0x000, "rue", "RUE 1ER JUIN", "R_Ennour");
    createVille(villeService, 17, 42, "kalaa_Kebira", 0x000, "rue", "RUE 1ER JUIN", "R_Ennour");
    createVille(villeService, 18, 42, "kalaa_Kebira", 0x000, "rue", "RUE 1ER JUIN", "R_Ennour");
    createVille(villeService, 19, 42, "kalaa_Kebira", 0x000, "rue", "RUE 1ER JUIN", "R_Ennour");
    createVille(villeService, 20, 42, "kalaa_Kebira", 0x000, "rue", "RUE 1ER JUIN", "R_Ennour");
    createVille(villeService, 21, 42, "kalaa_Kebira", 0x000, "rue", "RUE 1ER JUIN", "R_Ennour");
    createVille(villeService, 22, 42, "kalaa_Kebira", 0x000, "rue", "RUE 1ER JUIN", "R_Ennour");
    createVille(villeService, 23, 42, "kalaa_Kebira", 0x000, "rue", "RUE 1ER JUIN", "R_Ennour");
    createVille(villeService, 24, 42, "kalaa_Kebira", 0x000, "rue", "RUE 1ER JUIN", "R_Ennour");
    createVille(villeService, 25, 42, "kalaa_Kebira", 0x000, "rue", "RUE 1ER JUIN", "R_Ennour");
    createVille(villeService, 26, 42, "kalaa_Kebira", 0x000, "rue", "RUE 1ER JUIN", "R_Ennour");
    createVille(villeService, 27, 42, "kalaa_Kebira", 0x000, "rue", "RUE 1ER JUIN", "R_Ennour");
    createVille(villeService, 28, 42, "kalaa_Kebira", 0x000, "rue", "RUE 1ER JUIN", "R_Ennour");
    createVille(villeService, 29, 42, "kalaa_Kebira", 0x000, "rue", "RUE 1ER JUIN", "R_Ennour");
    createVille(villeService, 30, 42, "kalaa_Kebira", 0x000, "rue", "RUE 1ER JUIN", "R_Ennour");
    createVille(villeService, 31, 42, "kalaa_Kebira", 0x000, "rue", "RUE 1ER JUIN", "R_Ennour");
    createVille(villeService, 32, 42, "kalaa_Kebira", 0x000, "rue", "RUE 1ER JUIN", "R_Ennour");
    createVille(villeService, 33, 42, "kalaa_Kebira", 0x000, "rue", "RUE 1ER JUIN", "R_Ennour");
}
public void createREGION(RegionService rgService) {
    createRegion(rgService, 1, "Ariana", 1);
    createRegion(rgService, 2, "Beja", 2);
    createRegion(rgService, 3, "BenArous", 3);
    createRegion(rgService, 4, "Bizerte", 4);
    createRegion(rgService, 5, "Gabes", 5);
    createRegion(rgService, 6, "Gafsa", 6);
    createRegion(rgService, 7, "Kairouan", 7);
    createRegion(rgService, 8, "Kasserine", 8);
    createRegion(rgService, 9, "Kebili", 9);
    createRegion(rgService, 10, "Kef", 10);
    createRegion(rgService, 11, "Manouba", 11);
    createRegion(rgService, 12, "Medenine", 12);
</code></pre>

<p>}</p>

<pre><code>private static void createRegion(RegionService rgService, int id_region,String nom_region, int num_region) {
    Region region = new Region();
    region.setNom_region(nom_region);
    region.setNum_region(num_region);
    rgService.ajoutRegion(region);
}

private static void createVille(VilleService villeService, int id_ville, int id_region, String nom_ville, int num_ville, String type_voie, String voie, String resedence){
    Ville ville = new Ville();
    ville.setNom_ville(nom_ville);
    ville.setNum_ville(num_ville);
    ville.setType_voie(type_voie);
    ville.setVoie(voie);
    ville.setResedence(resedence);
    villeService.ajoutVille(ville);
}

private static void createActel(ActelsService atlService, int id_actels, int id_ville, String nom_actel, int num_actel){
    Actels actel = new Actels();
    actel.setNomActels(nom_actel);
    actel.setNum_actel(num_actel);
    atlService.ajoutActel(actel);
}
</code></pre>

<p>}</p>

<p>MyEntityManagerFactory.java</p>

<pre><code>package com.springJPA.util;

import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;

import org.springframework.stereotype.Component;

@Component("myEMF")
public class MyEntityManagerFactory {
    private EntityManager entityManager;
    private String unitName = "SpringJPA";

    public EntityManager getEntityManager() {
        if(entityManager == null){
        EntityManagerFactory emf = Persistence.createEntityManagerFactory(unitName);
        entityManager = emf.createEntityManager();
        }
        return entityManager;
    }

    public void setEntityManager(EntityManager entityManager) {
        this.entityManager = entityManager;
    }

    public String getUnitName() {
        return unitName;
    }

    public void setUnitName(String unitName) {
        this.unitName = unitName;
    }

}
</code></pre>