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 :

Affichage des données sur une page jsp


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 137
    Par défaut Affichage des données sur une page jsp
    Bonsoir,

    Je débute en struts et ejb et je voudrais récupérer des valeurs à partir de ma base et les afficher sur une page jsp dans des champs texte (pour pouvoir les modifier ultérieurement).

    Voici ma classe AffichageAction:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    final Context context = new InitialContext ();
    		RefGenBeanRemote ref = (RefGenBeanRemote) context.lookup("RefGen");
    		List <ParametreGeneraux> tt=ref.afficherSociete();
     
    		System.out.println("affsocact Ville "+tt.get(0).getVilSoci());//ville
    		System.out.println("affsocact Ville "+tt.get(0).getLibSoci());//identification
    Ma page 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
    <html:form action="societe1">
    <logic:present name="tt">
     
    	<table align="center">
    		<tr>
    			<td><bean:message key="societe.code" />*</td>
    			<td><html:text property="code" size="5"/></td>
    			<td><bean:message key="societe.identification" />*</td>
    			<td><html:text property="identification" size="40"/></td>
    		</tr>
     
    		<logic:iterate id="listesoc" name="tt">
    			<tr>
    				<td><bean:write name="societeForm" property="code"/></td>
    				<td><bean:write name="societeForm" property="identification"/></td>
    			</tr>
    		</logic:iterate>
     
     
    		<tr>
    			<td align="right"><html:submit property="submit" value="Valider"></html:submit></td>
    		</tr>
    	</table>
     
    </logic:present>
    </html:form>
    Avant d'ajouter l'itérateur, ça m'affichait dans la console les valeurs souhaitées. Je voudrais maintenant les afficher sur ma page, je crois qu'il y a quelque chose qui manque!

    Je voudrais savoir également à quoi sert "setAttribute":
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ServletContext s = request.getSession().getServletContext();
     List<ParametreGeneraux> listesoc = (List<ParametreGeneraux>)s.getAttribute("tt");
            s.setAttribute("listesoc", tt);
    Quand j'ai ajouté ces lignes rien n'a changé!!!

    Merci

  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
    Le setAttribute permet de mettre un objet dans le scope.
    Dans ton cas, tu as apparemment choisi le scope application.
    Est-ce vraiment justifié d'utiliser le scope application ?

    Sinon, essaie plutôt :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    List <ParametreGeneraux> tt=ref.afficherSociete();
    ServletContext s = request.getSession().getServletContext();
    s.setAttribute("listesoc", tt);
    en codant ceci, tu mets l'objet tt de type List<ParametreGeneraux> dans le scope application sous le nom listesoc.

    Donc, dans la jsp, pour pouvoir l'afficher, il faut mettre listesoc dans l'attribut name du tag logic:iterate et non dans l'attribut id :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <logic:iterate name="listesoc" id="soc">
    	<tr>
    		<td><bean:write name="soc" property="code"/></td>
    		<td><bean:write name="soc" property="identification"/></td>
    	</tr>
    </logic:iterate>

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 137
    Par défaut
    Justement, je n'ai pas besoin de mettre la liste en scope, je n'ai besoin que de la première ligne, donc j'ai juste ajouté ça dans ma classe Action (pas d'itérateur):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SocieteForm societeForm = (SocieteForm)form;
    		societeForm.setCode(tt.get(0).getCodSoci());
    Bonne chance

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

Discussions similaires

  1. [PHP 5.2] Problème d'affichage des accents sur une page
    Par seanbean dans le forum Langage
    Réponses: 6
    Dernier message: 13/04/2011, 13h13
  2. afficher des donnée avec une page JSP
    Par alfred5 dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 02/04/2011, 16h56
  3. affichage des données sur une seule page
    Par webdesign77 dans le forum ASP.NET
    Réponses: 2
    Dernier message: 12/03/2009, 23h23
  4. Reccupérer des données sur une page Internet
    Par avigeilpro dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 20/05/2007, 05h50
  5. Récupérer des données sur une page HTML
    Par rupeni dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 18/11/2005, 17h22

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