IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Struts 1 Java Discussion :

[html:link] comment passer 2 paramètres


Sujet :

Struts 1 Java

  1. #1
    Membre habitué
    Inscrit en
    Mars 2005
    Messages
    237
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 237
    Points : 181
    Points
    181
    Par défaut [html:link] comment passer 2 paramètres
    Bonjour,

    Je voudrais passer 2 paramètres dans une url avec les balises <html:link>
    Pour un paramètre, ça passe (en utilisant paramId et paramProperty).
    Mais pour 2 (un code langue et un code pays),
    je récupère ces 2 codes dans une base de données et je les met dans un bean puis les beans dans un arraylist.
    ensuite, via un <logic:iterate> j'affiche les liens :

    comment faire ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <td><html:link href="/appweb/SwitchLanguage.do" paramName="choixLangue"><bean:write name="choixLangue" property="codeLangue" /></html:link></td>

    Merci

  2. #2
    Membre habitué
    Inscrit en
    Mars 2005
    Messages
    237
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 237
    Points : 181
    Points
    181
    Par défaut
    bon, j'ai réussi à le faire fonctionner en utilisant une map et le bean:define, mais je trouve pas ça très propre (code java dans la jsp)

    est-ce que quelqu'un a une meilleure idée ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
    <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
    <%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
    <%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
    <%@ taglib uri="http://struts.apache.org/tags-nested" prefix="nested" %>
    <%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles" %>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>Insert title here</title>
    </head>
    <body>
    	<bean:message key="accueil" />
    	<br>
    	<bean:message key="choixLangue" />
    	<logic:present name="listLanguageAvailable">
    		<table>
    			<logic:iterate id="choixLangue" name="listLanguageAvailable">
    			<bean:define id="langue" name="choixLangue" property="codeLangue" />
    			<bean:define id="pays" name="choixLangue" property="codePays" />
    			<%
    				java.util.HashMap params = new java.util.HashMap();
    				params.put("cty", pays);
    				params.put("lang", langue);
    				pageContext.setAttribute("tempParams", params);
    			%>
    				<tr>
    					<td><html:link href="/appweb/SwitchLanguage.do" name="tempParams" paramName="choixLangue"><bean:write name="choixLangue" property="codeLangue" /></html:link></td>
    				</tr>
    			</logic:iterate>
    		</table>
    	</logic:present>
    <html:form action="/Logon" method="post" >
    	<table>
    		<tr>
    			<td><html:text property="login"></html:text></td>
    		</tr>
    		<tr>
    			<td><html:password property="password"></html:password></td>
    		</tr>
    	</table>
    </html:form>
    </body>
    </html>
    merci .....

  3. #3
    Expert éminent

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Points : 7 778
    Points
    7 778
    Par défaut
    Le code de création de la Map pourrait très bien être fait dans une classe, ce qui serait déjà beaucoup plus propre que dans la jsp.

    Sinon, l'autre solution consiste à utiliser des EL :

    en J2EE 1.4 ou plus :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <html:link href="/appweb/SwitchLanguage.do?lang=${choixLangue.codeLangue}&cty=${choixLangue.codePays}">
       <bean:write name="choixLangue" property="codeLangue" />
    </html:link>
    en J2EE 1.3 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <html-el:link href="/appweb/SwitchLanguage.do?lang=${choixLangue.codeLangue}&cty=${choixLangue.codePays}">
       <bean:write name="choixLangue" property="codeLangue" />
    </html-el:link>

  4. #4
    Membre habitué
    Inscrit en
    Mars 2005
    Messages
    237
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 237
    Points : 181
    Points
    181
    Par défaut
    merci c_nvy.

    oui, j'aurais pu le faire dans la classe java.
    finalement, j'ai utilisé les el.
    ça marche, merci !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. <html:link action="" > :Passer plusieurs paramètres
    Par sisiniya dans le forum Struts 1
    Réponses: 3
    Dernier message: 19/04/2011, 21h49
  2. Réponses: 3
    Dernier message: 28/02/2006, 08h43
  3. [Struts] html:link et passage de paramètres
    Par nikalkal dans le forum Struts 1
    Réponses: 9
    Dernier message: 09/02/2006, 21h34
  4. [VB6] Comment passer un paramètre à un vbs depuis du vb6
    Par durnambule dans le forum VBScript
    Réponses: 2
    Dernier message: 27/09/2005, 10h46
  5. Réponses: 7
    Dernier message: 30/12/2004, 12h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo