User Tools

Site Tools


sysrep:ejb3

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
sysrep:ejb3 [2013/12/18 15:55] – [Installation] orelsysrep:ejb3 [2024/03/18 15:06] (current) – external edit 127.0.0.1
Line 13: Line 13:
   * Plus de tutoriels : http://netbeans.org/kb/trails/java-ee.html   * Plus de tutoriels : http://netbeans.org/kb/trails/java-ee.html
  
-====Installation==== 
- 
-__Prérequis__ : vous devez disposer d'un Java 1.6 et de NetBeans 7. Si ce n'est pas le cas, veuillez consulter la section installation à la fin de cette page. 
  
 +__Prérequis__ : vous devez disposer d'un Java 1.6 et de NetBeans 7. Si ce n'est pas le cas, veuillez consulter la section installation à la fin de cette page. Lancez la commande suivante :
  
 +  $ netbeans-7.2
 ==== Prise en main de l'IDE NetBeans ==== ==== Prise en main de l'IDE NetBeans ====
  
Line 32: Line 31:
 <code java> <code java>
 public interface HelloInterface { public interface HelloInterface {
-  public String hello() { return "Hello World"}+  public String hello();
 }   }  
 </code>   </code>  
Line 38: Line 37:
  
   - Créez un projet de type Enterprise Application, appelé "EnterpriseApplication" qui contient un module EJB (EnterpriseApplication-ejb) et un module Web (EnterpriseApplication-war).   - Créez un projet de type Enterprise Application, appelé "EnterpriseApplication" qui contient un module EJB (EnterpriseApplication-ejb) et un module Web (EnterpriseApplication-war).
-  - Créez une nouveau projet "Java Class Library", appelé "HelloLibrary". Ce projet servira par la suite à accueillir l'interface Remote de notre Session Bean. __Nota Bene__ : Cette étape est nouvelle depuis NetBeans 7 !+  - Créez un nouveau projet "Java Class Library", appelé "HelloLibrary". Ce projet servira par la suite à accueillir l'interface Remote de notre Session Bean. __Nota Bene__ : Cette étape est nouvelle depuis NetBeans 7 !
   - Dans le module EJB, ajoutez maintenant un Session Bean (Stateless) HelloBean, composé d'une interface "Local" et "Remote", cette dernière étant associé au projet "HelloLibrary"   - Dans le module EJB, ajoutez maintenant un Session Bean (Stateless) HelloBean, composé d'une interface "Local" et "Remote", cette dernière étant associé au projet "HelloLibrary"
   - A ce niveau, votre bean (HelloBean.java) est créé ainsi que deux interfaces : HelloBeanLocal.java et HelloBeanRemote.java (dans HelloLibrary). Complétez ces fichiez.   - A ce niveau, votre bean (HelloBean.java) est créé ainsi que deux interfaces : HelloBeanLocal.java et HelloBeanRemote.java (dans HelloLibrary). Complétez ces fichiez.
   - Sélectionnez le module web et ajoutez une servlet "HelloServlet" qui utilise votre Session Bean. Pour cela, il faut ouvrir HelloServlet.java et cliquer sur le menu contextuel 'Insert Code / Call Enterprise Bean...', puis vous laisser guider. Utilisez votre bean dans la servlet...   - Sélectionnez le module web et ajoutez une servlet "HelloServlet" qui utilise votre Session Bean. Pour cela, il faut ouvrir HelloServlet.java et cliquer sur le menu contextuel 'Insert Code / Call Enterprise Bean...', puis vous laisser guider. Utilisez votre bean dans la servlet...
   - Pour Tester votre servlet, il faut faire Clean / Build / Run sur le projet principal "EnterpriseApplication" et non sur un des sous-modules ! Par défaut, la JSP est affiché, ouvrez donc explicitement votre servlet à l'URL suivante : http://localhost:8080/EnterpriseApplication-war/HelloServlet   - Pour Tester votre servlet, il faut faire Clean / Build / Run sur le projet principal "EnterpriseApplication" et non sur un des sous-modules ! Par défaut, la JSP est affiché, ouvrez donc explicitement votre servlet à l'URL suivante : http://localhost:8080/EnterpriseApplication-war/HelloServlet
-  - Nous allons maintenant ajouter un client distant, qui utilise donc l'interface Remote de notre bean. (...__Nota Bene__ : Netbeans ne permet que de démarrer un seul module client à la fois, le client standalone ou la servlet. Pour choisir lequel exécuter, sélectionner le menu Properties du projet principal "EnterpriseApplication", puis modifier le 'Client Module' dans la catégorie 'Run'+  - Nous allons maintenant ajouter un client distant, qui utilise donc l'interface Remote de notre bean. Pour ce faire, cliquez sur le menu New Project / Java EE / Enterprise Application Client, puis ajoutez-le à votre //Enterprise Application// et cochez la case //Enable Contexts and Dependency Injection//. __Nota Bene__ : Netbeans ne permet que de démarrer un seul module client à la fois, le client standalone ou la servlet. Pour choisir lequel exécuter, sélectionner le menu Properties du projet principal "EnterpriseApplication", puis modifier le 'Client Module' dans la catégorie 'Run'
-  - Utilisez ce Bean dans une JSP, en vous inscpirant du code ci-dessous...+  - Utilisez ce Bean dans une JSP, en vous inspirant du code ci-dessous...
  
 <code xml> <code xml>
Line 52: Line 51:
   <%=s%>    <%=s%> 
 </code>         </code>        
 +
 +__Nota Bene__ : L'IDE NetBeans est un peu sensible ! Il faut éviter autant que possible de faire du refactoring (rename, remove, ...). Si une erreur persiste au Build dans les cibles XML, tentez de redémarrer l'IDE. Si le problème persiste toujours, bah vous êtes bon pour recommencer tout votre projet :-(
  
 ====Application Bancaire==== ====Application Bancaire====
Line 79: Line 80:
   * balance (Float)   * balance (Float)
  
-  - Implanter BankBean un utilisant une HashMap<Long,Account>... +  - Implantez BankBean un utilisant une HashMap<Long,Account>... 
-  - Implanter un client standalone distant BankClient.java qui teste votre application (cf. nota Bene). +  - Implantez un client standalone distant BankClient.java qui teste votre application (cf. nota Bene). 
-  - Optionnel : tester avec une servlet.+  - Testez avec une servlet.
  
 Plus d'infos : Plus d'infos :
Line 88: Line 89:
   * Voir aussi le tutoriel : {{:sysrep:javaeetutorial.pdf}}   * Voir aussi le tutoriel : {{:sysrep:javaeetutorial.pdf}}
  
-====Application Bancaire Persistante====+====Application Bancaire Persistante (Bonus)====
  
 En vous inspirant de l'exercice précédent, développer une application de compte bancaire persistante, appelée BankAppPersistant. Dans ce cas précis, chaque compte sera représenté par un Entity Bean de type Account. En vous inspirant de l'exercice précédent, développer une application de compte bancaire persistante, appelée BankAppPersistant. Dans ce cas précis, chaque compte sera représenté par un Entity Bean de type Account.
Line 104: Line 105:
  
  
 +==== Installation de NetBeans 7 ====
 +
 +Nous allons installer l'IDE NetBeans 7.2.1 dont le script d'installation est disponible sur mon compte informatique. Vous pouvez également le télécharger [[http://download.netbeans.org/netbeans/7.2.1/final/bundles/netbeans-7.2.1-ml-javaee-linux.sh | ici]]. Copiez ce fichier dans le /tmp de votre machine et lancez le script d'installation, puis suivre les étapes en activant GlassFish 3 et Apache Tomcat 7. Il faut choisir de tout installer dans le /tmp pour des raisons d'économie d'espace disque.
 +
 +  $ cp /net/stockage/auesnard/netbeans-7.2.1-ml-javaee-linux.sh /tmp
 +  $ cd /tmp 
 +  $ chmod +x netbeans-7.2.1-ml-javaee-linux.sh
 +  $ ./netbeans-7.2.1-ml-javaee-linux.sh
 +
 +Au final, vous devez disposer de JavaEE 6, GlassFish 3, Apache Tomcat 7 et de NetBeans 7. Lancez maintenant l'IDE NetBeans. Le serveur web est configuré par défaut sur le port 8080 et l'interface web d'administration sur le port 4848. Vous pouvez accéder à ces configurations via l'onglet 'Services'  du panneau de gauche. 
 +
 +/*
 +Il est également possible de lancer NetBeans 7 depuis la version installée sur mon compte :
  
 +  $ /net/autre/LABRI/esnard/netbeans-7.2.1/bin/netbeans --userdir ~/netbeans
 +  
 +Il faut ensuite cliquer sur l'onglet "Services" puis dans la rubrique "Servers", il faut ajouter un nouveau Serveur Glassfish 3 (pointant sur /net/autre/LABRI/esnard/glassfish-3.1.2.2) avec un répertoire "Domain" situé sur votre compte. Vous pouvez maintenant supprimer l'ancien serveur Glassfish et commencer à travailler...
 +*/
sysrep/ejb3.1387382110.txt.gz · Last modified: 2024/03/18 15:05 (external edit)