Struts + EJB - Java - Programmation
Marsh Posté le 19-10-2007 à 09:19:34
brisssou a écrit : les actions struts, c'est des servlets, donc y a pas de raisons |
depuis quand ???
ante Struts 2, une Action , c'est une classe qui étend org.apache.struts.action.Action
et depuis Struts 2 une Action c'est une classe qui implémente l'interface Action
Marsh Posté le 19-10-2007 à 23:41:53
ok, je me suis ma lexprimé : dans Struts1 les Action disposent des request et response : on est pas loin des servlets
et struts2... quelqu'un utilise ça ?
Marsh Posté le 24-10-2007 à 17:07:04
Struts2, c'est comme Struts1 : on ne s'occupe que de la couche de présentation, pas de la couche métier. Or les EJB, c'est exclusivement pour implémenter la couche métier.
Struts1 fournit une servlet unique (ActionServlet) qui est le point d'entrée unique de toute l'application Web, et qui ne fait rien d'autre que déléguer le traitement de la request et la préparation de la response à un objet de type Action. L'objet de type Action est donc, d'une certaine manière, une "sous-servlet" (on préfère parler de "servlet déléguée", mais ça ne change rien dans le fond).
Pour Struts2, le principe reste strictement le même. La seule différence, c'est que la méthode execute() (qui est appelée par la servlet principale de Struts) n'inclut pas les paramètres de type HttpServletRequest et HttpServletResponse. La classe Action doit implémenter ServletRequestAware pour pouvoir récupérer la request. Quant à la response, en fait, on ne la récupère plus jamais dans l'Action : c'est la JSP qui a été configurée dans le struts.xml qui la manipule.
Maintenant, si tu sais accéder à tes EJB depuis une servlet classique, y accéder depuis une classe Action ne devrait pas être difficile : le code que tu plaçais dans la méthode service() de ta classe servlet, il faut juste le mettre dans la méthode execute() de ta classe Action (Struts 1 ou 2, c'est pareil).
Marsh Posté le 18-10-2007 à 09:38:17
Salut à tous,
je vais développer une appli web pour gérer des clients et des réservations et mon choix s'est tourné vers Java/JSP. Maintenant j'ai un problème, puisque je veux utiliser les ejb que j'ai programmer auparavant et je souhaite aussi utiliser le framework Struts. Le soucis est que je ne trouve absolument aucune doc pour accéder à mes ejb avec struts. Cependant, j'arrive à y accéder sans struts, c'est a dire avec une servlet et des jsp tout simple. Pensez vous que ce soit plus compliqué avec struts ou c'est a peu près la même méthode d'accès? Merci