Bonjour
je viens de crée une appli avec 3 couches DTO,DAO, Service en utilisant cxf + jpa hibernate, j'ai un probleme lors de l'execution d'un web service permettant l'enregistrement de données en base, lorsque j'utilise junit pour les test unitaire les methodes exposées marchent, mais quand j'utilise sopaui les données ne sont pas persister en base et je n'ai aucune exception
Voici les methodes + conf

ma declaration d'entitées
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
 
//entité personne
 
@Entity
@Table(name="TG_PERSONNE")
@Inheritance(strategy=InheritanceType.JOINED)
public  class Personne implements Serializable {
	private static final long serialVersionUID = 1L;
 
@Id
@TableGenerator(name="personneGen", allocationSize=1)
@GeneratedValue(strategy=GenerationType.TABLE, generator="personneGen")
@Column(name="ID_PERSONNE"  , columnDefinition="int")
private long idPersonne;
 
@Column(name="NOM")
private String nom;
...
//getter + setter

interface PersonneDAO
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
public interface PersonneDAO {
	public void ajouterPersonne(Personne personne) throws DaoException ;
implémentation de personnedao
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
@Repository
@Transactional(propagation=Propagation.MANDATORY)
public class PersonneDAOImpl implements PersonneDAO {
 
@PersistenceContext(unitName="personne-entite")
private EntityManager personneEm;
 
public void ajouterPersonne(Personne personne){
personneEm.persist(personne);
}
ma declaration de service
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
 
public interface PersonneService{
 
public enregistrerPersonne(EntreeDTO paramEntree) throws ServiceException;
 
}
 
//------------
 
@Service
public class PersonneServiceImpl implements PersonneService{
@Autowired
private PersonneDAO personneDAO;
 
@Transactional(propagation = Propagation.REQUIRED)
public enregistrerPersonne(EntreeDTO paramEntree) {
 
try {
Personne personne = new Personne() ;
personne.setNom("nom");
personne.setPrenom("prenom");
personneDAO.ajouterPersonne(personne) ;
 
}
 catch (DaoException e) {
throw new ServiceException(e.getMessage(), e.getCause());
}
 
 
 
}

et puis mon web service
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
 
 
@Service("personneService")
@WebService(serviceName="personneService")
public class PersonneServiceWeb {
 
	@Autowired
	private PersonneService personneService;
 
	@WebMethod(operationName="ajouterPersonne")
	public ajouterPersonne(
			@WebParam(name="EntreeDTO") EntreeDTO paramIn)
			throws ServiceException {
		personneService.ajouterPersonne(paramIn);
	}
	...
	...
}
la gestion des clé est faite au moyen d'une table de séquence, a chaque appel du web service elle sincèrement correctement coté sgbd.
lors de la réalisation des test unitaire de chaque méthode DAO, DTO + service les données sont correctement sauvegardés en base, le problème survient lors de l’exécution du service, aucune données n'est sauvegardé en base à part l'incrémentation des clé. et il n'y a aucun message d'erreur
Si vous avez une idée je suis preneur Merci d'avance a vous