Bonjour,
Voilà, j'ai une appli web qui est basée sur Spring 2.0 :
- Une action utilisateur doit réaliser un dump des données de la base, dans un fichier XML. Pour cela, j'utilise l'API de DdlUtils, lequel remplit son rôle.
Le problème est que ce dump devrait contenir également des données ajoutées juste avant l'invocation de DdlUtils, donc au cours de la même transaction. Or, ce n'est pas le cas, car visiblement DdlUtils semble effectuer ses SELECT (sur toutes les tables), sans tenir compte de la transaction courante, puisque les données attendues sont absentes du fichier XML.
Malgré un certain nombre de tests et de solutions de contournement, rien n'y fait, Spring et DdlUtils s'ignorent. Pourtant la DataSource fournie à DdlUtils est bien issue de l'injection de Spring.
Il est fort probable qu'un élément m'échappe et que c'est moi qui ne fait pas les bonnes déclarations des classes de DdlUtils, dans le fichier de config de Spring, mais pour l'instant mes essais n'ont rien donné.
Est-ce que quelqu'un saurait me dire si ce genre d'outil doit être "Springifié", donc en l'encapsulant dans les classes fournies par Spring, ou alors une déclaration bien particulière dans le fichier de config Spring suffirait à faire en sorte que les données fraîchement créées via DAO (au cours de la même transaction) soient "visibles" par DdlUtils. Ou éventuellement, s'il faudrait attaquer le problème sous un autre angle...
Ce problème est très pénible à solutionner... merci de votre soutien.
Si je ne suis pas clair, surtout n'hésitez pas à me le dire...
PS 1 :Ce post fait suite à celui-ci http://www.developpez.net/forums/d65...e/#post3831167
PS 2 : si je ne trouve pas la solution, il faudra probablement que je fasse moi-même le dump en passant par les DAO mais j'espère pas
Partager