Vous pouvez configurer vos instances EntityBean de façon à ce qu'elles ignorent un appel de la méthode ejbStore si elles n'ont pas été modifiées durant la transaction en cours.
Pourquoi et quand exécuter cette tâche
Deux options sont disponibles pour indiquer que la méthode ejbStore d'un type d'EJB (Enterprise JavaBeans) spécifique doit uniquement être appelée si le bean a été modifié lors de la transaction en cours :
- Définissez une variable d'environnement EJB dans le descripteur de déploiement du bean
- Demandez à la classe d'implémentation du bean d'implémenter une interface marqueur.
Cette seconde technique est particulièrement utile si vous disposez d'un certain nombre d'implémentations de beans qui étendent tous une classe racine unique. Dans ce cas, la classe racine peut implémenter l'interface marqueur pour que tous les beans qui étendent cette classe héritent également de ce comportement.
Procédure
- Pour utiliser la technique incluant une variable d'environnement EJB, editez le descripteur de déploiement EJB à l'aide de n'importe quel outil de développement Java™ Platform, Enterprise Edition (Java EE) standard. Laissez-vous guider par les étapes suivantes Pour plus d'informations, voir la rubrique relative aux outils d'assemblage.
- Lancez l'outil.
- Sélectionnez le descripteur de déploiement d'EJB du bean que vous souhaitez utiliser.
- Créez une variable d'environnement d'EJB appelée com/ibm/websphere/ejbcontainer/disableEJBStoreForNonDirtyBeans.
- Associez le type de cette variable à la valeur java.lang.Boolean.
- Associez la valeur à True pour empêcher l'invocation ejbStore
ou False pour activer le comportement par défaut.
- Enregistrez les modifications.
- Pour utiliser une interface marqueur, codez l'implémentation du bean afin d'implémenter l'interface com.ibm.websphere.ejbcontainer.DisableEJBStoreForNonDirtyBeans. La classe d'implémentation du bean ne doit pas implémenter directement l'interface.
N'importe quelle classe parent peut implémenter l'interface. Voir le package com.ibm.websphere.ejbcontainer dans la section du centre de documentation.