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 :

Soucis de débutant avec logic:equal


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé

    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    639
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 639
    Par défaut Soucis de débutant avec logic:equal
    Bonjour,

    mon logic:equal ne fonctionne pas, il m'affiche tout le temps : "Rien"
    Pouvez vous m'aider?

    formbean : Test
    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
    package formbean;
     
    import org.apache.struts.action.ActionForm;
     
    public class Test extends ActionForm {
    	private String bienvenue = "";
     
    	public String getBienvenue() {
    		return bienvenue;
    	}
     
    	public void setBienvenue(String bienvenue) {
    		this.bienvenue = bienvenue;
    	}
    }
    mon Action :
    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
    package action;
     
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
     
    import org.apache.struts.action.Action;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionForward;
    import org.apache.struts.action.ActionMapping;
     
    import formbean.Test;
     
    public class TestAction extends Action {
    	public ActionForward execute(ActionMapping mapping,ActionForm form, 
    			HttpServletRequest request, 
    			HttpServletResponse response) throws Exception{
    		Test leTest = new Test();
    		leTest.setBienvenue("Bienvenue");
    		request.setAttribute("test", leTest);
    		return mapping.findForward("success");
    	}
    }
    mon struts-config.xml
    Code xml
    :
    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
        <form-beans>
        	<form-bean
                name="test"
                type="formbean.Test"/>
        </form-beans>
     
    <!-- =========================================== Action Mapping Definitions -->
     
        <action-mappings>
    		<action
    		            path="/testStruts"
    		            type="action.TestAction"
    		            name="test"
    		            scope="request">
    		            <forward name="success" path="/index.jsp" redirect="true"/>
    		          </action>
     
        </action-mappings>

    ma jsp:
    Code xml : 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
     
    <%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
    <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
    <%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
     
     
    <html:form action="/testStruts">
    	<html:submit value="Test Struts"></html:submit>
    </html:form>
     
    <logic:equal name="test" scope="request" property="bienvenue" value="Bienvenue">
    		Bienvenue
    </logic:equal>
     
    <logic:notEqual name="test" scope="request" property="bienvenue" value="Bienvenue">
    		Rien
    </logic:notEqual>

  2. #2
    Membre éclairé

    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    639
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 639
    Par défaut
    Petit pb dans mon Action, il fallait ecrire :
    request.getSession().setAttribute("test", leTest);

  3. #3
    Membre éclairé Avatar de spoklo
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 67
    Par défaut
    bonjour,
    Supprime dans le forward de ton action : redirect="true"
    (cet paramètre permet de faire un "redirect" vers une ressource avec Struts, en changant l'url affichée dans le navigateur pour laisser apparaître la véritable url de la ressource affichée).

    avec (redirect="true"), en debugant, le request au début de la page index.jsp ne contient aucun attribut (size=0) ... pourquoi ??? si quelqu'un a la réponse, ça m'intéresse.

    les deux lignes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <logic:equal name="test" scope="request" ...
    et 
    <logic:notEqual name="test" scope="request" ...
    on a scope="request" donc dans le code de ton action, il faut utilise
    request.setAttribute("test", leTest).
    au lieu de request.getSession().setAttribute("test", leTest), tu risque de ne pas trouver ton object dans le scope request.

    si tu utilise request.getSession().setAttribute("test", leTest), il faut changer dans les deux taglib logic:equal et notEqual et mettre scope="session".

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

Discussions similaires

  1. [Struts] Problème avec logic:equal
    Par Sniper37 dans le forum Struts 1
    Réponses: 9
    Dernier message: 03/03/2011, 15h32
  2. Réponses: 3
    Dernier message: 03/03/2008, 10h30
  3. Débutante : logic:equal
    Par wiam26 dans le forum Struts 1
    Réponses: 5
    Dernier message: 12/08/2006, 14h07
  4. [Struts] <logic:equal> pb avec value ?
    Par Pwill dans le forum Struts 1
    Réponses: 3
    Dernier message: 03/06/2005, 09h57
  5. [struts] Comparer deux variables avec <logic:equal>
    Par trax020 dans le forum Struts 1
    Réponses: 4
    Dernier message: 29/05/2005, 11h08

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