u're welcome.
Bien courage pour la suite de ton stage.
u're welcome.
Bien courage pour la suite de ton stage.
Merci je vais en avoir besoin étant donné qu'ils ne m'aident vraiment pas du tout... !!!
Aller... maintenant faut que je comprenne ces EJB de A à Z. Je fais essayer de faire quelques essais. Peut être vous me reverrez parmis vous très bientôt lol !!
Encore merci à tous ceux qui m'ont aidé !!
Rebonjour à tous !
Tant que je continue sur le même exemple et comme cet example touche un peu à "tout" (tout pour moi = JSP, EJB, JDBC ), je crois que je vais continuer à poster ici...
Bon j'ai continuer un peu mon petit chemin mais je voudrais vérifier que je ne pars pas sur de mauvaise base...
Donc je rappelle que mon exemple est celui d'une simple page de login. Voici comment j'ai organisé mon travail :
EssaiLoginJsp
...|_Java Resources: src
...|.....|_com.servlet.control
...|.....|.....|_InvokeJsp.java (Invoke login.jsp)
...|.....|.....|_LoginAction.java (Appelle la fonction checklogin et affiche la page result.jsp ou error.jsp)
...|.....|
...|.....|_com.servlet.model
...|.....|.....|_CheckLogin (Appelle l'EJB, controle le login/password avec la fonction check(user, pass))
...|.....|
...|.....|_com.servlet.model.exception
...|...........|_Error.java (Extends Exception)
...|
...|_WebContent
...|.....|_WEB-INF
...|.....|.....|_web.wml
...|.....|
...|.....|_error.jsp
...|.....|_login.jsp
...|.....|_result.jsp
...|
...|_jndi.properties (je ne suis pas sur qu'il soit à la bonne place...)
EssaiLoginEJB
...|_ejbModule
.........|_com.bean
................|_LoginEJB.java (Remote interface)
................|_LoginEJBBean.java (le bean - se connecte à la DB)
Les deux projets sont donc liés (Java Build Path).
Donc si je comprends bien le mécanisme,
- je rentre l'url pour accéder au site,
- le web.xml fait la liaison pour rediriger vers la page souhaitée (ici login.jsp)
- je rentre un login et password
- le formulaire active login.do qui va chercher dans web.xml vers quoi renvoyer (ici LoginAction.java).
- LoginAction appelle CheckLogin
(c'est la que ca commence à ne pas etre clair pour moi...)
- Ma fonction booléenne check(user, pass); appelle le Bean.
- Le Bean se connecte à la base MySQL par un DataSources (que je ne sais pas encore faire, si vous avez un bon tuto ou example... la seule info que j'ai trouvée potable étant celle ci : http://java.sun.com/j2se/1.4.2/docs/guide/jdbc/getstart/datasource.html).
Alors voila, une fois les user et pass récupérer, je ne sais pas ou je dois effecter le test pour vérifier par rapport au valeur rentrée. D'après vous, ce doit-être dans le Bean ou dans la servlet CheckLogin ?
J'espère avoir été le plus précis possible...
Encore merci d'avance pour votre aide.
Si je dois repréciser des choses ya pas de souci.
Julien.
Souvent, le projet EJB est découpé en 2 projets.
Un projet qui va contenir les classes utilisables par les clients (lourd ou web), avec éventuellement les JavaBeans et une classe qui contient l'implémentation des ejb.
Dans un projet Web, ça ne va pas servir forcement à grand chose car on utilise en général l'injection de dépendances proposé par le serveur d'application.jndi.properties (je ne suis pas sur qu'il soit à la bonne place...)
Et il gère tout tout seul.
Cela peut en revanche servir dans le cas où on utilise une initialisation des EJB à la "main".
Idem pour les ressources du type Datasource ou EntityManager qui peuvent être injecté automatiquement par le serveur.
Je ne répondrai à aucune question technique en privé
Salut Millie et merci pour ta réponse.
Si je comprends bien, j'ai donc à peu près bien fait les choses : un projet client qui est ici un projet Web, et un projet qui contient l'implémentation des EJB (d'ailleurs... doit-il y avoir 1 projet par EJB créés ? en admettant qu'il y en ait plusieurs ce qui n'est pas mon cas ici) ?
Après je ne suis pas sûr de t'avoir bien suivi en ce qui concerne le jndi.properties. Pour un projet Web, il n'est donc pas nécessaire d'en utiliser un et c'est le serveur d'application (jBoss donc) qui gère ça ? Il ne faut rien rajouter au code ?
Il me reste encore une question sans réponse à savoir :
En ce qui concerne le traitement qui vérifie la conformité du couple login/password, je ne suis pas sûr de décomposer les choses comme il se doit. Pourrais-tu me dire si ma logique est bonne d'après ce que j'ai indiqué dans mon message précédent ?
Merci encore pour votre aide à tous !
Julien.
Non. Il y a juste en général un projet pour toutes les interfaces clientes et un projet pour tous les implémentations Bean.
Dans un projet Web, il n'y a pas besoin (sauf cas particulier si on utilise pas l'injection de dépendances du serveur d'application).un projet Web, il n'est donc pas nécessaire d'en utiliser un et c'est le serveur d'application (jBoss donc) qui gère ça ? Il ne faut rien rajouter au code ?
Je ne répondrai à aucune question technique en privé
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager