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

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

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

Saved successfully!

Ooh no, something went wrong!