30.01.2015 Views

des enterprise beans - Département Informatique

des enterprise beans - Département Informatique

des enterprise beans - Département Informatique

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Enterprise <strong>beans</strong> et transactions<br />

Les <strong>beans</strong> session stateful et stateless peuvent tous deux utiliser l’un ou<br />

l’autre type de transaction. Cependant, un bean ne peut pas utiliser les<br />

deux types de gestion <strong>des</strong> transactions en même temps. Le fournisseur du<br />

bean décide quel type le bean session utilisera. Un bean entité ne peut<br />

utiliser que les transactions gérées par le conteneur<br />

Vous pourriez souhaiter qu’un bean gère ses propres transactions si vous<br />

vouliez démarrer une transaction en tant que partie d’une opération et la<br />

terminer en tant que partie d’une autre opération. Cependant, vous<br />

rencontreriez <strong>des</strong> problèmes si une opération appelait la méthode qui<br />

démarre la transaction et qu’aucune opération n’appelait la méthode qui<br />

la termine.<br />

Chaque fois que c’est possible, écrivez <strong>des</strong> <strong>enterprise</strong> <strong>beans</strong> qui utilisent<br />

les transactions gérées par le conteneur. Ils exigent moins de travail de<br />

votre part et amènent moins d’erreurs. De plus, il est plus facile de<br />

personnaliser un bean utilisant les transactions gérées par le conteneur et<br />

de s’en servir pour composer d’autre <strong>beans</strong>.<br />

Attributs <strong>des</strong> transactions<br />

Les <strong>enterprise</strong> <strong>beans</strong> qui utilisent <strong>des</strong> transactions gérées par le conteneur<br />

ont <strong>des</strong> attributs de transaction associés à chaque méthode du bean ou au<br />

bean lui-même. La valeur d’un attribut indique au conteneur comment il<br />

doit gérer les transactions concernant le bean. Il existe six attributs de<br />

transaction différents que l’assembleur de l’application, ou celui qui la<br />

déploie, peut associer à chacune <strong>des</strong> métho<strong>des</strong> du bean :<br />

• Required<br />

Garantit que le travail effectué par la méthode associée se trouve dans<br />

un contexte de transaction globale. Si l’appelant a déjà un contexte de<br />

transaction, le conteneur utilise le même contexte. Si l’appelant n’a pas<br />

de contexte de transaction, le conteneur commence automatiquement<br />

une nouvelle transaction. L’utilisation de cet attribut permet de<br />

composer plusieurs <strong>beans</strong> et de coordonner facilement le travail de tous<br />

ces <strong>beans</strong> en utilisant la même transaction globale.<br />

• RequiresNew<br />

Utilisé quand vous ne voulez pas la méthode associée à une transaction<br />

existante. Il garantit que le conteneur commence toujours une nouvelle<br />

transaction.<br />

• Supports<br />

Permet à la méthode d’éviter d’utiliser une transaction globale.<br />

N’utilisez cet attribut que lorsque la méthode d’un bean accède à une<br />

seule ressource de transaction, ou à aucune, et si la méthode n’invoque<br />

pas un autre <strong>enterprise</strong> bean. Comme cet attribut épargne le coût <strong>des</strong><br />

transactions globales, son utilisation optimise votre bean. Si cet attribut<br />

13-4 Guide du dé veloppeur Enterprise JavaBeans

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!