Traduction de scriplets en JSTL/EL

Traduction de scriplets en JSTL/EL - Java - Programmation

Marsh Posté le 03-10-2005 à 16:00:51    

Bonjour a tous  :hello:  
 
Avis a ceux qui s'y connaissent en JSTL et EL :
 
Voila je suis sur un projet que mon responsable m'a donné, ce projet utilise le framework struts. Je suis en ce moment sur une partie qui liste des requetes faites par des administrateurs de la société. J'ai réussi a traduire certaines choses  comme par exemple ceci :
 
Avant :

Code :
  1. <%=webInformationBean.getOperation()%>


Apres:

Code :
  1. <c:out value="${webInformationbean.operation}"></c:out>


 
Mais j'ai deux scriplets ou je n'arrive pas à traduire ...voici le code et les explications sur celui-ci:
 

Code :
  1. <center><p align="center"><%=frcGatewaySrsBean.getFrcGatewaySrsDtos().length%> requetes selectionnées</p></center>


 
Où frcGatewaySrsBean est un bean et getFrcGatewaySrsDtos() un accesseur qui renvoie la propriété du bean nommé frcGatewaySrsDtos. Cette propriété est un tableau qui renferme les requetes faites par un administrateur, c'est pourquoi on peut recupérer sa longueur avec length. Cette phrase je n'arrive pas a trouver son équivalent en JSTL, en fait c'est le ".length" qui me gene plus particulièrement.
 
Ensuite, voici la seconde partie qui me pose problème :
 

Code :
  1. <% for (int i=0;i<frcGatewaySrsBean.getFrcGatewaySrsDtos().length;i++){%>
  2. <tr class="normal">
  3.   <td><b><%=FrcGatewaySrsBean.getLong(frcGatewaySrsBean.getFrcGatewaySrsDtos()[i].getFrcGatewaySrsId())%></b></td>
  4. </tr>
  5. <%}%>


 
Alors frcGatewaySrsBean c'est toujours un bean, et la fonction  getFrcGatewaySrsDtos() renvoie un attribut du bean qui se trouve être un tableau d'objets. la partie de code <%=FrcGatewaySrsBean.getLong(frcGatewaySrsBean.getFrcGatewaySrsDtos()[i].getFrcGatewaySrsId())%> signifie qu'on récupère l'identifiant d'un objet qui est à l'index i du tableau frcGatewaySrsDtos.
Cette partie je n'arrive pas à la traduire car je ne sais pas traduire en EL une fonction qui possède des arguments. J'ai essayé de chercher sur plusieurs tutoriels mais je n'arrive pas a trouver...
 
Aidez moi svp! :jap: Merci!


---------------
Estelio guru lîn
Reply

Marsh Posté le 03-10-2005 à 16:00:51   

Reply

Marsh Posté le 04-10-2005 à 10:16:51    

Personne n'a une idée? J'ai beau chercher sur tous les tutoriels et forums possibles je ne trouve rien...Ouiiiinn :'(


---------------
Estelio guru lîn
Reply

Marsh Posté le 04-10-2005 à 12:46:29    

getLong(...) c'est une méthode statique? :/


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 04-10-2005 à 14:14:13    

Non, getLong(...) n'est pas une méthode statique. J'ai beau questionner des forums en anglais, sans succès...Alors peut-être que je cherche des traductions qui ne sont pas possibles! Je sais pas :/


---------------
Estelio guru lîn
Reply

Marsh Posté le 04-10-2005 à 16:38:53    

pour ta boucle, tu as un tag foreach en jstl
apres t'aurais à faire un  truc genre
${frcGatewaySrsBean.getLong(${currentMachin.frcGatewaySrsId})}
 
mais euh, elle fait quoi cette methode getLong, elle m'a l'air un poil louche..


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 05-10-2005 à 10:30:12    

Desolée je me suis trompée getLong est une méthode statique. En fait, elle prend enparamètre un long qui se trouve etre un id, verifie qu'il n'est pas null et renvoie une chaine de caractère correpondant à l'id entré en paramètre. Pour etre plus claire voici le code :

Code :
  1. public static String getLong(Long id){
  2.       if (id == null) return "-1";
  3.       else return id.toString();
  4.   }


---------------
Estelio guru lîn
Reply

Marsh Posté le 05-10-2005 à 12:05:33    

hmmm... essaie sans, déjà, pour voir.  
 
apres, bon, cette méthode, elle est super mal nommée... mais je suppose qu'elle a une réelle utilité? y'a une vraie logique "business" pour afficher -1 quand je-ne-sais-quoi n'a pas d'id ?


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 05-10-2005 à 14:23:48    

Honnêtement, je ne me suis pas posée la question de savoir si c'etait utile ou non : le projet m'a été fourni comme ca, je ne dois simplifier que les pages JSP et ce, rapidement. Mais perso j'en vois pas trop l'utilité...
 
Surtout avec ce que je viens d'apprendre : apparemment les methodes possédant des paramètres ne sont pas "traductibles" en EL. Par contre concernant la longueur d'un tableau, la libraire EL (nommée fn) prevoit ce genre de choses. Ca serait un truc du genre : ${ fn:length(param)}, mais je ne suis pas sure que ca marche avec des tableaux
 
Il me reste plus qu'a trouver les bonnes librairies parce que pour l'instant ca marche pas :/  
Et puis les méthodes paramétrées bein c simple y'a rien a faire donc soit il simplifie le code, soit il laisse les scriplets...
 
Voila


---------------
Estelio guru lîn
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed