Cette règle marque le code qui extrait l'objet UserTransaction en utilisant javax.transaction.UserTransaction ou weblogic.transaction.UserTransaction comme chaîne de recherche.
Les beans de transaction gérée par bean doivent obtenir l'objet UserTransaction à l'aide de la méthode EJBContext getUserTransaction. D'autres composants d'application, comme les servlets et les composants Web, obtiennent la référence par le biais d'une recherche JNDI avec le nom java:comp/UserTransaction.
Les types de recherche marqués sont les suivants :
Recherche de UserTransaction dans WebLogic|
UserTransaction xact = ctx.lookup("javax.transaction.UserTransaction"); or UserTransaction xact = ctx.lookup("weblogic.transaction.UserTransaction"); |
Pour les transactions gérées par bean, la ligne de code est modifiée pour utiliser la méthode getUserTransaction.
Recherche gérée par bean|
UserTransaction xact = ctx.getUserTransaction(); |
Pour les codes de bean non enterprise (clients d'application, composants Web et servlets), le scanner de source propose un correctif rapide qui modifie le code en vue de l'utilisation d'une recherche JNDI avec le nom java:comp/UserTransaction. Le résultat ressemble à l'exemple suivant :
Recherche de UserTransaction dans WebSphere|
UserTransaction xact = ctx.lookup("java:comp/UserTransaction"); |