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

Servlets/JSP Java Discussion :

[JSP]utilisation d'un Bean


Sujet :

Servlets/JSP Java

  1. #1
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 77
    Points : 69
    Points
    69
    Par défaut [JSP]utilisation d'un Bean
    Salut,
    je voudrais utiliser une bean dans ma jsp qui permet d'avoir des infos sur un utilisateur.
    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
    <body>
    	<jsp:useBean id="client" scope="session" class="divers.Client" />
    	<div id="entete">
    		<div id="haut">
    			<img src="img/coinexg_ent.gif" id="coinexg_ent"/>
    			<img src="img/coinb_logo.gif" id="coinb_logo"/>
    			<div id="logo">
    				<img src="img/logo.gif" width="150" height="70"/>
    			</div>
    			<div id="navbar">
    				<img src="img/coing_ent.gif" id="coing_ent"/>
    				<img src="img/coind_ent.gif" name="coind_ent" id="coind_ent"/>
    				<a href="index.jsp">accueil</a> 
    				<%
                                            client.execRequete("walid");
                                            if (request.getRemoteUser()!=null)
                                            {
                                                    out.print("| <a href='decon.jsp'>déconnexion </a>");
                                            }
                                    %>
    				| <a href="index.jsp">plan du site</a>
    			  	<div id="perm">
    					<%
                                                    if (request.getRemoteUser()!=null) 
                                                    { 
                                                            out.print(client.getNom() + "<br>");
                                                            out.print("<a href='compte.jsp'>Mon compte</a>");
                                                    }
                                                    else
                                                    {
                                                            out.print("<a href=\"enregistrement.jsp\">Inscription</a>");
                                                    }
                                            %>
    					<a href="aide.jsp">Aide</a>
    				</div>
    				<div id="recherche">
    					<form name="recherche" method="GET" action="recherche.jsp">
    						<input name="recherche" type="text"/> <input name="submit" type="submit" value="rechercher"/>
    					</form>
    				</div>	
    			</div>
    		</div>
    	</div>
    	<div id="tout">
    		<img src="img/arrondig.gif" id="coing"/>
    		<div id="menu">
    			<%@ include file="menu.jsp" %>
    		</div>
    		<img src="img/arrondid.gif" id="coind"/>
    		<div id="contenu">
    			<%@ include file="index_inc.jsp" %>
    		</div>
    	</div>
    </body>
    voici ma page de test, elle devrait utilser les méthodes de la classe suivante :
    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
    package divers;
     
    import java.sql.*;
     
    public class Client
    {
    	public Client() 
    	{
     
    	}
     
    	private String login, mdp, nom, prenom, email, adresse, ville, cp, telephone, sexe, naissance, role, admin;
    	private boolean virtuel;
    	private Connection con;
    	private Statement st;
    	private ResultSet lers ;
     
    	public void execRequete(String lelogin) throws Exception
    	{
    			Connection con = Connexion.getConnection();
    			Statement st=con.createStatement();
    			ResultSet rs = st.executeQuery("select * from clients where login='"+ lelogin +"';");
    			this.nom = rs.getString("nom");
    			this.prenom = rs.getString("prenom");
    			this.email = rs.getString("email");
    			this.adresse = rs.getString("adresse");
    			this.ville = rs.getString("ville");
    			this.cp = rs.getString("cp");
    			this.telephone = rs.getString("telephone");
    			this.sexe = rs.getString("sexe");
    			this.naissance = rs.getString("naissance");
    			this.role = rs.getString("role");
    			con.close() ;
    	}
     
    	public boolean estAdmin()
    	{
     
    		return (admin.equals("admin"));
    	}
     
    	public String getNom()
    	{
    		return nom;
    	}
    Par contre ca ne marche pas, je seche dessus depuis super longtemps, j'ai tout essayé et je ne sais pas ce qui marche pas.
    Quelqu'un pourrait m'aider?

  2. #2
    Membre averti
    Inscrit en
    Décembre 2005
    Messages
    391
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Décembre 2005
    Messages : 391
    Points : 301
    Points
    301
    Par défaut
    est ce ke tu a implemente les get en l occurence getNom() ???

  3. #3
    Membre averti
    Inscrit en
    Décembre 2005
    Messages
    391
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Décembre 2005
    Messages : 391
    Points : 301
    Points
    301
    Par défaut
    excuse moi j avais pas bien lu tu a implemente getnom()

    qu est ce qui ne marche pas exactement???

    tu a essaye de debugguer?

  4. #4
    Membre expérimenté
    Avatar de zekey
    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 036
    Points : 1 403
    Points
    1 403
    Par défaut
    La déclaration useBean est faite pour être utilisé avec des tags jsp pas dans les scriptlets directement. En fait ta déclaration instancie un objet et le met dans la session si il n'y est pas encore.

    Pour l'utiliser dans les scriptlet, il faut rajouter:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    divers.Client client=(divers.Client)pageContext.getSession().getAttribute("client");
    Et eventuellement rajouter les imports nécéssaires.
    Steve Hostettler
    est ton ami(e) et le tag aussi.

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 32
    Points : 33
    Points
    33
    Par défaut
    Bonjour,

    Le code source publié ci-dessus semble de bonne qualité. Je cherche un squelette d’application JSP utilisant un include pour le menu mais permettant quand même de personnaliser celui-ci en fonction du rôle de l’utilisateur connecté.

    Je ne souhaite pas utiliser struts, jguard ou tout autre framework spécialisé (bibliothèque de tag, template:insert ) pour gérer la sécurité ou les imbrications mais je veux quand même un bon niveau de sécurité et éviter la duplication de code.

    A partir de quel site web, livre ou tutoriel avez-vous construit votre application ?

    Merci

  6. #6
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 77
    Points : 69
    Points
    69
    Par défaut
    Merci zekey
    par contre ya certaines choses que je n'ai pas compris.
    J'utilise jsp:usebean dans une jsp comme on ma toujours appri a faire, donc je sais pas ou exactement insérer ce que tu as noté.
    e ntoute rigueur, pour utiliser le bean que j'ai recopié dans mon post, g juste a faire un jsp:usebean dans le code html de ma page, puis d'utiliser le nom de ce bean pour apppeler les méthodes qu'il contient?
    Si je me trompe et que ce n'est pas la bonne méthode, dites le moi car ce qui est sur c qu'il y a une erreur g aucune idée d'ou ca peut venir, je fait fausse route.
    merci a tous pour votre aide

  7. #7
    Membre expérimenté
    Avatar de zekey
    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 036
    Points : 1 403
    Points
    1 403
    Par défaut
    Voici un exemple qui devrait te permettre de voir plus clair:

    Mon beau bean:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    package net.zekey.stock.web.struts.action.bas002;
     
    public class TestBean {
     
    		public int getNumberPlus2(int pN){
    			return pN+2;
    		}
    }
    Ma belle 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
     
    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
    <jsp:useBean id="monBean" class="net.zekey.stock.web.struts.action.bas002.TestBean"
    scope="session" />
     
    <c:out value="${monBean.n2}" />
    ${monBean.n2}
     
    <%=((net.zekey.stock.web.struts.action.bas002.TestBean)
    pageContext.getSession().getAttribute("monBean")).getN2()
    %>
     
    <%=((net.zekey.stock.web.struts.action.bas002.TestBean)
    pageContext.getSession().getAttribute("monBean")).getNumberPlus2(10)
    %>
    Ici tu as les divers exemple d'utilisations
    Steve Hostettler
    est ton ami(e) et le tag aussi.

Discussions similaires

  1. Utiliser une valeur <bean:write /> dans ma jsp
    Par susu39 dans le forum Struts 1
    Réponses: 3
    Dernier message: 18/01/2011, 11h12
  2. Utilisation des entity beans dans une JSP ?
    Par ellow dans le forum JPA
    Réponses: 3
    Dernier message: 17/12/2009, 12h27
  3. problem d'utilisation d'un bean dans une jsp
    Par thaundeadboss dans le forum Servlets/JSP
    Réponses: 0
    Dernier message: 15/07/2009, 11h40
  4. probleme avec l'utilisation d'un bean dans une jsp.
    Par thaundeadboss dans le forum Servlets/JSP
    Réponses: 0
    Dernier message: 15/07/2009, 01h00
  5. Débutante jsp, utilisation de bean
    Par zuzuu dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 17/07/2006, 09h18

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