des enterprise beans - Département Informatique
des enterprise beans - Département Informatique
des enterprise beans - Département Informatique
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Cré ation de l’ interface locale<br />
La classe de base EJBHome<br />
Toutes les interfaces locales étendent l’interface javax.ejb.EJBHome. Voici la<br />
définition complète de EJBHome :<br />
package javax.ejb<br />
public interface EJBHome extends java.rmi.Remote {<br />
void remove(Handle handle) throws java.rmi.RemoteException,<br />
RemoveException;<br />
void remove(Object primaryKey) throws java.rmi.RemoteException,<br />
RemoveException;<br />
EJBMetaData getEJBMetaData() throws RemoteException;<br />
HomeHandle getHomeHandle() throws RemoteException;<br />
}<br />
EJBHome possède deux métho<strong>des</strong> remove() pour supprimer les instances <strong>des</strong><br />
<strong>enterprise</strong> <strong>beans</strong>. La première méthode remove() identifie l’instance par un<br />
handle ; la deuxième par une clé primaire.<br />
Un handle, identificateur d’objet bean sérialisable, a la même durée de vie<br />
que l’objet <strong>enterprise</strong> bean qu’il référence. Pour un bean session, le handle<br />
n’existe que le temps de la session. Pour un bean entité, le handle peut<br />
persister et un client peut utiliser un handle sérialisé pour rétablir une<br />
référence à l’objet entité qu’il identifie.<br />
Un client se servira de la deuxième méthode remove() pour supprimer<br />
l’instance d’un bean entité en utilisant sa clé primaire.<br />
getEJBMetaData() renvoie l’interface EJBMetaData de l’objet <strong>enterprise</strong> bean.<br />
Cette interface permet au client d’obtenir les informations de<br />
métadonnées relatives au bean. Son objectif est d’être utilisée par les outils<br />
de développement qui construisent <strong>des</strong> applications utilisant <strong>des</strong><br />
<strong>enterprise</strong> <strong>beans</strong> déployés.<br />
Notez que l’interface EJBHome n’a pas de méthode pour créer ou localiser les<br />
instances d’un <strong>enterprise</strong> bean. A la place, vous devez ajouter ces<br />
métho<strong>des</strong> aux interfaces locales que vous développez pour vos <strong>beans</strong>.<br />
Comme les <strong>beans</strong> session et les <strong>beans</strong> entité ont <strong>des</strong> cycles de vie<br />
différents, les métho<strong>des</strong> définies dans leurs interfaces locales diffèrent.<br />
Création d’une interface locale pour un bean session<br />
Un bean session a presque toujours un seul client (sauf occasionnellement<br />
les <strong>beans</strong> session stateless). Quand un client crée un bean session, cette<br />
instance du bean session n’existe que pour l’utilisation de ce client.<br />
Pour créer une interface locale pour un bean session,<br />
• Déclarez une interface locale qui étend javax.ejb.EJBHome.<br />
• Ajoutez la signature d’une méthode create() pour chaque méthode<br />
ejbCreate() du bean, avec un nombre et <strong>des</strong> types d’arguments<br />
correspondant exactement.<br />
11-2 Guide du dé veloppeur Enterprise JavaBeans