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 :

struts et formulaire


Sujet :

Struts 1 Java

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 130
    Par défaut struts et formulaire
    Bonjour,
    j'ai fait un formulaire que voici :
    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
     
    <html:form action="/confirmation.do">
    			<table>
    				<tr>
    					<td><html:text name="itemconfirmation" property="itemburger" value="<%= itemburger.getItemburger() %>" disabled="true"></html:text></td>
    				</tr>
    				<tr>
    					<td><html:text name="itemconfirmation" property="itemfrite" value="<%= itemfrite.getItemfrite() %>" disabled="true"></html:text></td>
    				</tr>
    				<tr>
    					<td><html:text name="itemconfirmation" property="itemboisson" value="<%= itemboisson.getItemboisson() %>" disabled="true"></html:text></td>
    				</tr>
    				<tr>
    					<td><html:text name="itemconfirmation" property="itemformat" value="<%= itemformat.getItemformat() %>" disabled="true"></html:text></td>
    				</tr>
    				<tr>
    					<td><html:submit><bean:message key="formulaire_de_login.confirmer"/></html:submit></td>
    				</tr>
    				<%-- %><tr><html:hidden property="itemboisson" name="itemboisson"></html:hidden></tr> --%>
    			</table>
    		</html:form>
    les item* sont des beans qui ont des info que je veux afficher à l'utilisateur pour confirmation, une fois la confirmation fait je les enregistrerai.

    une partie du struts-config :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <form-beans>
    		<form-bean name="itemconfirmation" scope="session" type="item.ItemConfirmation"></form-bean>
    	</form-beans>
    <action-mappings>
    <action input="/format.jsp" name="itemconfirmation" path="/confirmation" scope="session" type="action.Confirmation" validate="true">
    			<forward name="panier" path="/panier.jsp" redirect="true"></forward>
    		</action>
    </action-mappings>
    le bean ItemConfirmation :
    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
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
     
    package item;
     
    import javax.servlet.http.HttpServletRequest;
     
    import org.apache.struts.action.ActionErrors;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionMapping;
     
    public class ItemConfirmation extends ActionForm
    {
    	private static final long serialVersionUID = 2444317134153839766L;
     
    	private String itemconfirmation;
    	private String itemburger;
    	private String itemfrite;
    	private String itemboisson;
    	private String itemformat;
     
    	@Override
    	public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) 
    	{	
    		/**
                     * il faut maintenant verifier que les objt sont bien recupéré
                     */
    		System.out.println("itemconfirmation = " + itemconfirmation);
    		System.out.println("itemburger = " + itemburger);
    		System.out.println("itemfrite = " + itemfrite);
    		System.out.println("itemboisson = " + itemboisson);
    		System.out.println("itemformat = " + itemformat);
     
    		return null;
    	}
     
    	/**
             * @return the itemconfirmation
             */
    	public String getItemconfirmation() {
    		return itemconfirmation;
    	}
     
    	/**
             * @param itemconfirmation the itemconfirmation to set
             */
    	public void setItemconfirmation(String itemconfirmation) {
    		this.itemconfirmation = itemconfirmation;
    	}
     
    	/**
             * @return the itemburger
             */
    	public String getItemburger() {
    		return itemburger;
    	}
     
    	/**
             * @param itemburger the itemburger to set
             */
    	public void setItemburger(String itemburger) {
    		this.itemburger = itemburger;
    	}
     
    	/**
             * @return the itemfrite
             */
    	public String getItemfrite() {
    		return itemfrite;
    	}
     
    	/**
             * @param itemfrite the itemfrite to set
             */
    	public void setItemfrite(String itemfrite) {
    		this.itemfrite = itemfrite;
    	}
     
    	/**
             * @return the itemboisson
             */
    	public String getItemboisson() {
    		return itemboisson;
    	}
     
    	/**
             * @param itemboisson the itemboisson to set
             */
    	public void setItemboisson(String itemboisson) {
    		this.itemboisson = itemboisson;
    	}
     
    	/**
             * @return the itemformat
             */
    	public String getItemformat() {
    		return itemformat;
    	}
     
    	/**
             * @param itemformat the itemformat to set
             */
    	public void setItemformat(String itemformat) {
    		this.itemformat = itemformat;
    	}
    }
    la classe Confirmation n'est pas un soucis ici je fais une simple redirection vers mon idex.jsp

    le soucis et que je n'arrive pas à récupérer la valeur des string à chaque fois je récupère la valeur null

    est ce que vous pouvez m'aider svp

  2. #2
    Membre chevronné
    Avatar de you.baddi
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2008
    Messages
    185
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2008
    Messages : 185
    Par défaut
    bonjour :

    premièrement est ce que les valeur null tu les récupère dans la premier page que contient la form ou dans une action (l'action /confirme.do)
    car je crois que les attribut n'initialise a chaque fois que la classe héritant de ActionForm s'instanciée

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 130
    Par défaut
    les valeurs sont récupérer dans d'autres pages et sont stocké dans les beans itemburger, itemboisson, itemfrite, itemformat et elles existent la preuve et que je peux les afficher avec cette commande qui est dans chaque value
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <%= itemburger.getXxxxx() %>

  4. #4
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    Normal que tu récupères null, tes champs sont "disabled" !
    Petit rappel :
    - un champ readonly est transmis lors de la soumission du formulaire
    - un champ disabled n'EST PAS transmis lors de la soumission du formulaire
    - un champ hidden est transmis lors de la soumission du formulaire

    A+
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 130
    Par défaut
    voila une chose que je connaissais pas.
    le problème est que dois garder garder ces champs donc il me faut passer par des hidden mais je ne comprends pas comment ils fonctionnent est ce que cela marcherai :
    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
     
    <html:form action="/confirmation.do">
    			<table>
    				<tr>
    					<td><html:text name="itemconfirmation" property="itemburger" value="<%= itemburger.getItemburger() %>" disabled="true"></html:text></td>
    				</tr>
    				<tr>
    					<td><html:text name="itemconfirmation" property="itemfrite" value="<%= itemfrite.getItemfrite() %>" disabled="true"></html:text></td>
    				</tr>
    				<tr>
    					<td><html:text name="itemconfirmation" property="itemboisson" value="<%= itemboisson.getItemboisson() %>" disabled="true"></html:text></td>
    				</tr>
    				<tr>
    					<td><html:text name="itemconfirmation" property="itemformat" value="<%= itemformat.getItemformat() %>" disabled="true"></html:text></td>
    				</tr>
    				<tr>
    					<td><html:submit><bean:message key="formulaire_de_login.confirmer"/></html:submit></td>
    				</tr>
    <tr>
    <td><html:hidden property="itemburger" /><html:hidden property="itemfrite" /><html:hidden property="itemboisson" /><html:hidden property="itemformat" /></td>
    </tr>
    			</table>
    		</html:form>
    ou est ce qu'il risque d'y avoir des conflits variables.

    EDIT : j'ai essayé le code ci-dessus et sa fonctionne mais j'ai encore une autre question jusque là j'ai un peu avancer à l'aveugle et j'ai besoin d'info sur les attributs name, et property. voici ce que je pense avoir compris le name est l'identifiant d'un objet et property fait la relation en le bean et l'action form pour la récupération des donées.

  6. #6
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    "name" représente l'objet de référence
    "property" représente la propriété (ou champ si tu préfères) dans l'objet de référence à utiliser

    Pour ton problème initial, il y a effectivement une différence si tu as les 2 types de champs (hidden + text) dans la mesure où on passe à une liste de valeurs pour 1 nom d'attribut (bon, si tu dis que ça fonctionne...)

    Mais pourquoi ne pas utiliser l'attribut "readonly" plutôt que "disabled" ?
    Ce que tu veux, c'est qu'on ne puisse pas changer la valeur, non ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 130
    Par défaut
    en fait je l'aurais bien fait mais comme je viens de me mettre à struts il y a beaucoup de chose que je ne connais pas et quand j'ai parcouru la liste des attribut de <html:text> je suis tombé sur disabled donc je l'ai utilisé.
    merci pour vos réponses

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

Discussions similaires

  1. [Struts] Validation formulaire
    Par nighma dans le forum Struts 1
    Réponses: 1
    Dernier message: 10/10/2006, 21h14
  2. [Débutant] - Struts Validation formulaire
    Par chennuo dans le forum Struts 1
    Réponses: 5
    Dernier message: 21/07/2006, 08h49
  3. [Struts] validation formulaire
    Par bruno270579 dans le forum Struts 1
    Réponses: 8
    Dernier message: 05/04/2006, 14h19
  4. Réponses: 4
    Dernier message: 19/01/2006, 16h24
  5. [Struts]imbrication formulaires Struts
    Par touriste44 dans le forum Struts 1
    Réponses: 5
    Dernier message: 17/11/2005, 09h56

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