Bonjour à tous,
J'utilise Borland Enterprise Server 5.2 pour développer un projet J2EE. Tous mes beans d'entité ont la propriété ejb.CacheCreate à true pour pouvoir définir les champs de relations (cmr fields) dans les méthodes ejbPostCreate().
Le problème est que dans le cas d'un problème de clé primaire dupliquée, l'exception levée par le conteneur EJB est une exception système (RemoteException) et non une DuplicateKeyException ou une CreateException. La transaction est donc annulée correctement mais je perds l'information sur l'origine de l'erreur. Si je positionne ejb.CacheCreate à false, j'obtiens bien une DuplicateKeyException mais dans ce cas je ne peux pas utiliser ejbPostCreate(): la commande SQL INSERT a lieu avant, ce qui provoque une erreur si les clés étrangères mappant les champs de relation ne doivent pas valoir NULL.
J'espère que j'ai été clair et que quelqu'un pourra m'aider à m'en sortir...
Merci d'avance !
Baptiste
PS. Merci de m'indiquer le forum le plus approprié si je ne poste pas au bon endroit.
Partager