Bonsoir,
voila mnt j'ai 2 jours que je glaire avec la création d'un web service qui permet d'ajouter un enregistrement dans base de données avec le framework JPA (hibernate)
voici tous les éléments du projet :
L'entité que j'utilise pour ajouter l'enregistrement :
Une classe dao :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 @Entity public class Town { @Id @GeneratedValue(strategy = GenerationType.AUTO) Long id; String name; int population; // getters/setters }
Les fichiers de configuration de spring
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 @Repository @Transactional public class TownDao { private EntityManager entityManager ; @PersistenceContext(name="testWebService") public void setEntityManager(EntityManager entityManager) { this.entityManager = entityManager; } public void save(Town town){ entityManager.persist(town); } }
Un dossier META-INF qui contient le fichier persistence.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 <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="${connection.driver_class}" /> <property name="url" value="${connection.url}" /> <property name="username" value="${connection.username}" /> <property name="password" value="${connection.password}" /> </bean> <bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean"> <property name="persistenceUnitName" value="testWebService" /> <property name="persistenceXmlLocation" value="classpath:META-INF/persistence.xml" /> <property name="dataSource" ref="dataSource" /> <property name="loadTimeWeaver"> <bean class="org.springframework.instrument.classloading.InstrumentationLoadTimeWeaver" /> </property> <property name="jpaVendorAdapter" ref="vendorAdapter" /> </bean> <bean id="vendorAdapter" class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter"> <property name="databasePlatform" value="${hibernate.dialect}" /> <property name="showSql" value="${show_sql}" /> <property name="generateDdl" value="true" /> </bean> <bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager"> <property name="entityManagerFactory" ref="entityManagerFactory" /> </bean> <bean class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor" /> <tx:annotation-driven/> <context:annotation-config /> <context:component-scan base-package="com.test.dao" /> <context:property-placeholder location="classpath:jdbcConfig.properties" />
j'ai ajouté dans le fichier web.xml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3<persistence-unit name="testWebService"> <class>com.gise.model.Town</class> </persistence-unit>
avec eclipse j'ai crée un nouveau web service.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 <context-param> <param-name>contextConfigLocation</param-name> <param-value> /WEB-INF/classes/applicationContext*.xml </param-value> </context-param> <listener> <listener-class> org.springframework.web.context.ContextLoaderListener </listener-class> </listener>
après avoir générer le fichier .wsdl
j'ai pu consommer le le fichier ".wsdl" mais j'ai ce pb
un nullpointerexception avec la valeur de entityManager dans la classe TownDao.
La question comment faire la jointure entre un web service et les beans de spring ??
S.V.P
Help!!!!!!!!!!!
Partager