Voilà plusieurs heures que je me creuse la tête, impossible de trouver l'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dsApplication': Invocation of init method failed; nested exception is javax.naming.NameNotFoundException: Le Nom jdbc n'est pas lié à ce Contexte
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1553)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:539)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:475)
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:304)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:300)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:195)
        at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328)
        ...
Dans mon web.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
<!-- Définition du nom de la source de données de l'application -->
	<jee:jndi-lookup id="dsApplication" jndi-name="${jndi.dsApplication}" />
 
<!-- JPA EntityManagerFactory -->
	<bean id="entityManagerFactory"
   	class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean" >
   	<property name="dataSource" ref="dsApplication" />
		<property name="persistenceXmlLocation" value="/META-INF/persistence.xml"/>
		<property name="persistenceUnitName" value="AppUnit"/>
		<property name="jpaProperties">
			<props>
				<prop key="hibernate.dialect">${hibernate.dialect}</prop>
				<prop key="hibernate.show_sql">${hibernate.show_sql}</prop>
				<prop key="hibernate.generate_statistics">${hibernate.generate_statistics}</prop>
				<prop key="hibernate.hbm2ddl.auto">${hibernate.hbm2ddl.auto}</prop>
<!-- 				Optimization Hibernate -->
				<prop key="hibernate.jdbc.use_streams_for_binary">true</prop>
				<prop key="hibernate.jdbc.batch_versioned_data">true</prop>
				<prop key="hibernate.default_batch_fetch_size">8</prop>
				<prop key="hibernate.cache.use_query_cache">true</prop>
				<prop key="hibernate.max_fetch_depth">2</prop>
				<prop key="hibernate.cache.use_second_level_cache">false</prop>
				<prop key="jdbc.fetch_size">48</prop>
				<prop key="jdbc.batch_size">24</prop>
				<prop key="hibernate.cache.provider_class">org.hibernate.cache.EhCacheProvider</prop>
				<prop key="hibernate.bytecode.use_reflection_optimizer">true</prop>
				<prop key="hibernate.order_updates">false</prop>
			</props>
		</property>
   </bean>
 
<!-- Mise en oeuvre des transactions -->
	<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
		<property name="entityManagerFactory" ref="entityManagerFactory" />
		<property name="dataSource" ref="dsApplication" />
	</bean>
Dans jdbc.properties
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
hibernate.dialect=org.hibernate.dialect.Oracle10gDialect
jndi.dsApplication=java:/comp/env/jdbc/dsApp
hibernate.generate_statistics=false