Probleme injection entityManager
salut tout le monde,
Je me met a JPA et je rencontre un probleme :
Je travaille avec une architecture spring + jpa sur une webb app, avec un serveur tomcat 6.
J'ai simplifié les classes pour plus de lisibilité.
Mon problème est que dans mon dao mon entityManager est toujours null maigres l injection (qui ne marche pas donc) via spring.
Mon Dao :
Code:
1 2 3 4 5 6 7 8 9 10 11
|
@Transactional
public class voitureDAO {
@PersistenceContext(unitName = "car")
EntityManager em;
public void addCar() {
Car carWash = new Car("4L");
em.persist(warWash);
}
} |
Mon fichier persistence.xml (Qui est bel et bien lu):
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"
version="1.0">
<persistence-unit name="car" transaction-type="RESOURCE_LOCAL">
<class>package.voitureDAO</class>
</persistence-unit>
</persistence> |
Et enfin ma déclaration du entityManagerFactory dans mon appContext.xml :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
<bean id="entityManagerFactory"
class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
<property name="persistenceUnitName" value="car" />
<property name="dataSource" ref="dataSource" />
<property name="jpaVendorAdapter" ref="vendorAdapter" />
<property name="loadTimeWeaver">
<bean
class="org.springframework.instrument.classloading.InstrumentationLoadTimeWeaver">
</bean>
</property>
</bean> |
Mon entityManager dans mon dao reste toujours null... Des idées ?