Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1629 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  [Java/Struts] Déclencher des actions (.do) dans une Action...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Java/Struts] Déclencher des actions (.do) dans une Action...

n°1031918
BifaceMcLe​OD
The HighGlandeur
Posté le 31-03-2005 à 23:36:20  profilanswer
 

Bonjour à tous,
 
Voici mon problème : j'ai une ferme de serveurs X1 à Xn basés sur Struts. Ces serveurs X1 à Xn ont, parmi toutes les servlets qu'ils acceptent, un "/admin/serverState.do" qui renvoie une description (plus ou moins) binaire de leur état (pour cela, pas de souci, j'ai écrit dans le ServletOutputStream renvoyé par la response.getOutputStream() de l'action associée).
 
J'ai par ailleurs un serveur d'administration Y, également basé sur Struts, à qui on va demander de faire un rapport sur l'état d'activité (plus ou moins détaillé) des serveurs X1 à Xn (disons, lorsqu'un navigateur demande "/admin/report.do" ). Y connaît bien sûr l'addresse de chacun des serveurs X1 à Xn.
 
Ce que je veux faire, c'est, dans l'action associée à "/admin/report.do", pouvoir déclencher n actions "/admin/serverState.do" sur les différents serveurs de ma ferme, et en décrypter leur réponse pour pouvoir en fabriquer une synthèse (synthèse qui sera ensuite affichée très classiquement par une JSP). Bref, d'une certaine manière, je voudrais que mon serveur Y se comporte comme un client des serveurs X1 à Xn.
 
Et vous l'aurez compris, je ne veux pas que la JSP associée au rapport de Y invoque directement la ou les JSP associée(s) au(x) "serverState.do" par un <jsp:forward> ou un <jsp:include> (d'ailleurs, il n'y a pas de telle JSP sur les serveurs X1 à Xn, puisque "/admin/serverState.do" renvoie directement un flux de caractères dans l'action associée, sans faire de forward).
 
Comment faire ?

mood
Publicité
Posté le 31-03-2005 à 23:36:20  profilanswer
 

n°1032136
sebi
Posté le 01-04-2005 à 09:51:46  profilanswer
 

bon ca l'air assez complexe et je suis pas assez cale pour t'aider je pense mais peut etre une piste en utilisant les chaines de responsabilite du style :

Code :
  1. <action path  = "/sourceAction"
  2.             type  = "com.acme.struts.Action1"
  3.             name  = "myForm"
  4.             input = "/WEB-INF/jsp/error1.jsp">
  5.             <forward name="OK" path="/targetAction.do"/>
  6.     </action>


pris d'un exemple de the server side  
http://www.theserverside.com/artic [...] ionMapping
 
tu forwarde vers une autre action et pas vers une jsp, enfin si j'ai bien compris


Message édité par sebi le 01-04-2005 à 10:06:50
n°1032207
BifaceMcLe​OD
The HighGlandeur
Posté le 01-04-2005 à 10:55:47  profilanswer
 

Le problème, c'est que j'ai n actions et non une seule à exécuter. Et sur d'autres serveurs en plus, qui ne sont connus que du code Java, pas du struts-config.xml (parce que leur liste a été préalablement extraite dynamiquement). C'est pour cela que je ne vois pas comment faire avec un simple forward.
 
Bon, OK, à vue de nez, le fait d'envoyer une requête sur un autre serveur plutôt que sur le même serveur doit pouvoir se régler avec un forward et une JSP (il suffit que l'IP et le port de l'autre serveur soient passés en paramètre d'URL et la JSP doit pouvoir s'occuper du reste en faisant un <jsp:forward> ).
 
Reste la problématique de déclencher n actions dans une Action...


Message édité par BifaceMcLeOD le 01-04-2005 à 11:04:12
n°1033558
machinbidu​le1974
Do you feel lucky, punk ?
Posté le 03-04-2005 à 14:13:53  profilanswer
 

Utilise Commons HttpClient pour invoquer tes n actions "/admin/serverState.do" depuis ton serveur d'admin (action "/admin/report.do" ).
 
edit: Ce que tu veux faire n'est pas possible (imho) avec le fichier struts-config.xml


Message édité par machinbidule1974 le 03-04-2005 à 14:28:13
n°1034144
BifaceMcLe​OD
The HighGlandeur
Posté le 04-04-2005 à 11:47:14  profilanswer
 

Merci !


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  [Java/Struts] Déclencher des actions (.do) dans une Action...

 

Sujets relatifs
[java][applet]inserer des jpanel dans un gridlayoutOuvrir un fichier pdf depuis une application Java
Fichier .properties (Struts)Lien entre J2EE et Struts
Java et le vectoriel... animé !Flash MX 2004 : problème pour faire une action....
projet java SWING/JDBC/MySQLVotre IDE java
Désinstallation pguin java 1.3.1_02[java] Classe abstraite, polymorphisme et tableau
Plus de sujets relatifs à : [Java/Struts] Déclencher des actions (.do) dans une Action...


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR