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.
Un bean session pour faire vos courses<br />
}<br />
public class CardExpiredException extends Exception {<br />
public CardExpiredException(String message) {<br />
super(message);<br />
}<br />
}<br />
Interfaces exigées<br />
Les <strong>enterprise</strong> <strong>beans</strong> ont toujours deux interfaces : une interface locale et<br />
une interface distante. Dans cet exemple le bean session Cart a une<br />
interface distante EJB publique appelée Cart et une interface locale appelée<br />
CartHome.<br />
Lorsque vous utilisez l’expert Enterprise JavaBean, les interfaces locale et<br />
distante sont créées en même temps que la classe du bean. Si vous avez<br />
déjà un bean session, mais pas les interfaces, utilisez l’expert Interfaces<br />
EJB. Pour utiliser l’expert, affichez le code source de votre <strong>enterprise</strong> bean<br />
dans l’éditeur de code et choisissez Experts|Interfaces EJB. Répondez aux<br />
deman<strong>des</strong> de l’expert et il créera l’interface locale et l’interface distante de<br />
votre <strong>enterprise</strong> bean.<br />
Pour plus d’informations sur l’utilisation <strong>des</strong> experts Enterprise JavaBean<br />
et Interfaces EJB, voir Chapitre 3, “Création <strong>des</strong> <strong>enterprise</strong> <strong>beans</strong> avec<br />
JBuilder”.<br />
L’interface locale<br />
Comme toute interface locale, CartHome étend l’interface EJBHome. Alors que<br />
l’interface locale a deux fonctions : créer <strong>des</strong> instances du bean et trouver<br />
<strong>des</strong> instances du bean, les <strong>beans</strong> session n’ont qu’à créer l’instance d’un<br />
bean. Les <strong>beans</strong> session cessent d’exister lorsque la session d’un client se<br />
termine. De ce fait, il n’y a pas à trouver d’instance de CartBean, par<br />
exemple lorsqu’un acheteur entre dans le magasin en ligne, car il n’existe<br />
pas d’instance de CartBean. Seules les interfaces locales <strong>des</strong> <strong>beans</strong> entité<br />
incluent <strong>des</strong> opérations find, car les <strong>beans</strong> entité sont utilisés par plusieurs<br />
clients et vivent aussi longtemps que les entités de données. Voici<br />
l’interface CartHome :<br />
// CartHome.java<br />
public interface CartHome extends javax.ejb.EJBHome {<br />
Cart create(String cardHolderName, String creditCardNumber,<br />
java.util.Date expirationDate)<br />
throws java.rmi.RemoteException,javax.ejb.CreateException;<br />
}<br />
L’interface CartHome est très simple, elle définit une seule méthode create().<br />
Comme il s’agit d’un bean session stateful, il pourrait y avoir plusieurs<br />
métho<strong>des</strong> create(). Dans cet exemple, la méthode create() de l’interface<br />
CartHome accepte trois paramètres : cardHolderName, creditCardNumber et<br />
expirationDate.<br />
9-16 Guide du dé veloppeur Enterprise JavaBeans