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 :

[Débutant][taglibs] "value" sur un <html:text> ?


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2003
    Messages
    921
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2003
    Messages : 921
    Par défaut [Débutant][taglibs] "value" sur un <html:text> ?
    Salut à tous,

    je cherche à effectuer ce processus :

    - l'utilisateur saisit le numéro d'une machine et clique sur Submit ;
    - Action : requêtage ;
    - appel de la JSP qui va bien !

    Ceci fonctionne sans problème !

    Mon problème est que j'aimerais que la JSP, dans laquelle j'affiche les informations de la machine choisit par l'utilisateur, soit elle-même un formulaire ! Ainsi l'utilisateur n'aurait qu'à taper un nouveau numéro de machine dans la case du formulaire de ma page JSP et ça relancerait "autrement" le processus décrit précédemment !

    Compris ?

    Je viens de trouver ce que je voulais faire ... mais lui non plus ça ne fonctionne pas ! Normal ... on a fait la même chose !

  2. #2
    Expert confirmé

    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
    Par défaut
    Ben, je ne vois pas où est le problème.
    Si le numéro de machine est une propriété du formulaire et que tu soumets la même Action après modification de la propriété, tu récupèreras automatiquement la valeur modifiée.

  3. #3
    Membre éclairé
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2003
    Messages
    921
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2003
    Messages : 921
    Par défaut
    Citation Envoyé par c_nvy
    Ben, je ne vois pas où est le problème.
    En faisant comme ça, pas de problème :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input name="manufactNumber" id="tableau" size="6" maxlength="6" value="<%= donneesMachine.get("MANUFACT_NUMBER") %>" onkeyup="if(event.keyCode==13) this.form.submit();" />
    Mais en voulant utiliser les taglibs ... problème :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <html:text property="manufactNumber" styleId="tableau" size="6" maxlength="6" value="<%= donneesMachine.get("MANUFACT_NUMBER") %>" onkeyup="if(event.keyCode==13) this.form.submit();" />

  4. #4
    Expert confirmé

    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
    Par défaut
    Dans l'Action, il faut initialiser la propriété manufactNumber via le setter de ton ActionForm :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    TonActionForm formBean = (TonActionForm) form ;
    formBean.setManufactNumber(donneesMachine.get("MANUFACT_NUMBER"));

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    372
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 372
    Par défaut
    Pour ton form dans la jsp machine.jsp :
    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
    <div id = "formuChangeUser">
    	<table class="default">
    		<html:form action= "/tonaction" onsubmit='return verification();'>
    			<tr>
    				<td><bean:message key="machine.numero"/></td>
    				<td></td>
    				<td><html:text property="numMachine"/></td>
    			</tr>
    			<tr>
    				<td><bean:message key="machine.info1" /></td>
    				<td></td>
    				<td><html:text property="info1"/></td>
    			</tr>
    			<tr>
    				<td><bean:message key="machine.info2" /></td>
    				<td></td>
    				<td><html:text property="info2"/></td>
    			</tr>
    			<tr>
    				<td></td>
    				<td></td>
    				<td>
    					<html:submit><bean:message key='machine.bouton.submit'/></html:submit>
    					<html:cancel><bean:message key='machine.bouton.cancel'/></html:cancel>
    				</td>
    			<tr>
    		</html:form>
    	</table>
    </div>
    Dans ton action tu dois créer un objet de type de l'Action Form que tu as créé pour le formulaire :
    machineForm.java :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    public class MachineForm extends ActionForm {
    	private String numMachine;
    	private String info1;
            private String info2;
     
    // tous les getters & setters
    private void setNumMachine(String numero){
    ....
    Danc l'action tu dois mettre :
    MachineAction.java
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    public class MachineAction extends Action{
    	public ActionForward execute(ActionMapping mapping,
    			ActionForm form,
    			HttpServletRequest request,
    			HttpServletResponse response)
    			throws IOException, ServletException {
    ...
    ...
    MachineForm machineForm = (Machineform)form;
    machineForm .setNumMachine("A124D4");
    machineForm .setInfo1("info1");
    ...
    ...
    Tu initialise de cette manière tous les champs que tu veux afficher au chargement de la jsp

    Et le tour est joué !

    Anne

  6. #6
    Membre éclairé
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2003
    Messages
    921
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2003
    Messages : 921
    Par défaut
    Merci n_cvy et AnneB !

    Je pense que c'est exactement ce que je recherchais, mais pour tout vous avouez (je sais c'est mal) ... mon projet était précédemment en Servlets + JSP, car je ne connaissais absolument pas le développement en J2EE, mais uniquement en J2SE !

    Donc en fait, mon projet est actuellement en STRUTS/Servlets/JSP !!!


    Ca fonctionne, mais il faut que je remplace ma servlet, qui me permet de récupérer et d'afficher mes données, par un Action.


    Je mets mon post à le temps de recoder tout ça et je reviens vers vous demain ... parce que je pense qu'il y aura des bugs !


    Gôm

Discussions similaires

  1. [Quote] DVP quoté sur Bashfr
    Par Skyounet dans le forum La taverne du Club : Humour et divers
    Réponses: 16
    Dernier message: 26/09/2006, 18h52

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