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

JSF Java Discussion :

JSF et les Tableaux


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    119
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2006
    Messages : 119
    Par défaut JSF et les Tableaux
    Bonjour à tous,

    Je souhaite afficher un tableau contenant deux champs : login et password
    J'ai suivi un tutoriel sur les jsf pour ça mais c'est bisarre comment ça se comporte.

    Voila ma config.

    Ma page Acceuil.jsp ( la ou est affiché mon tableau )

    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
     
    <%@ page contentType="text/html" %>
    <%@ taglib uri="http://java.sun.com/jsf/html" prefix="html" %>
    <%@ taglib uri="http://java.sun.com/jsf/core" prefix="core" %>
     
    <core:view>
     
    	<html:dataTable value="#{administrationBean.users}" var="users" border="1">
    		<core:facet name="header">
    			<core:verbatim>Users</core:verbatim>
    		</core:facet>
    		<html:column>
    			<core:facet name="header">
    				<core:verbatim>LoginUser</core:verbatim>
    			</core:facet>
    			<html:outputText value="#{userBean.loginUser}"/>
    		</html:column>
    		<html:column>
    			<core:facet name="header">
    				<core:verbatim>PasswordUser</core:verbatim>
    			</core:facet>
    			<html:outputText value="#{userBean.passwordUser}"/>
    		</html:column>
    	</html:dataTable>
    	<br/>	
     
    	<html:form>
    		<html:commandLink action="deconnection" value="Deconnection" />
    	</html:form>
    </core:view>
    mon fichier faces-config.xml ou sont declaré les managers :

    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
     
    <?xml version="1.0" encoding="UTF-8"?>
     
    <faces-config
        xmlns="http://java.sun.com/xml/ns/javaee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd"
        version="1.2">
    	<managed-bean>
    		<managed-bean-name>userBean</managed-bean-name>
    		<managed-bean-class>home.my.vue.UserBean</managed-bean-class>
    		<managed-bean-scope>request</managed-bean-scope>
    	</managed-bean>
    	<managed-bean>
    		<managed-bean-name>administrationBean</managed-bean-name>
    		<managed-bean-class>home.my.vue.AdministrationBean</managed-bean-class>
    		<managed-bean-scope>request</managed-bean-scope>
    	</managed-bean>
    </faces-config>
    et ma classe AdministrationBean.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
    15
    16
    17
    18
    19
    20
    21
    22
    23
    package home.my.vue;
     
    import java.util.ArrayList;
    import java.util.List;
     
    public class AdministrationBean {
     
    	private List<UserBean> users = new ArrayList<UserBean>();
     
    	public AdministrationBean(){
    		users.add(new UserBean("aaa","123"));
    		users.add(new UserBean("bbb","456"));
    		users.add(new UserBean("ccc","789"));
    	}
     
    	public List<UserBean> getUsers() {
    		return users;
    	}
     
    	public void setUsers(ArrayList<UserBean> users) {
    		this.users = users;
    	}
    }
    et ma class UserBean.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
    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
    package home.my.vue;
     
    import home.my.service.IUserManager;
     
    import org.springframework.beans.factory.xml.XmlBeanFactory;
    import org.springframework.core.io.ClassPathResource;
     
    public class UserBean {
     
    	private int idUser;
    	private String loginUser;
    	private String passwordUser;
    	private int idRole;
     
    	public UserBean() {
    	}
     
    	public UserBean(String loginUser, String passwordUser) {
    		this.loginUser = loginUser;
    		this.passwordUser = passwordUser;
    	}
     
    	public int getIdUser() {
    		return this.idUser;
    	}
     
    	public void setIdUser(int idUser) {
    		this.idUser = idUser;
    	}
     
    	public String getLoginUser() {
    		return this.loginUser;
    	}
     
    	public void setLoginUser(String loginUser) {
    		this.loginUser = loginUser;
    	}
     
    	public String getPasswordUser() {
    		return this.passwordUser;
    	}
     
    	public void setPasswordUser(String passwordUser) {
    		this.passwordUser = passwordUser;
    	}
     
    	public int getIdRole() {
    		return this.idRole;
    	}
     
    	public void setIdRole(int idRole) {
    		this.idRole = idRole;
    	}
     
    	public String connection(){
     
    		XmlBeanFactory bf = new XmlBeanFactory(new ClassPathResource("spring-config.xml"));
    		IUserManager user = (IUserManager) bf.getBean("userManager");
     
    		if (user.checkLogin(this.loginUser, this.passwordUser)){
    			return "connectionSuccess";
    		}
    		else{
    			return "connectionFail";
    		}
    	}
    }
    Pour la dynamique : j'accede à mon site via un formulaire de connection
    ( login et password ) que je soumets et si c'est ok avec la base on va sur la page Accueil.jsp et la on affiche une liste de user ( ici codé en dur pour tester ). La navigation marche correctement ( je n'ai pas mis les regle de navigation dans le faces-config.xml pour plus de clarté ).

    Ce qui ne marche pas c'est qu'un tableau s'affiche mais n'affiche pas les user en dur ( "aaa", "bbb", "ccc" ) mais trois fois mon user et password de connection. Je suppose que c'est du au fait qu'il s'agit en fait de la meme class qui est gérée pour la connection. Mais c'est quand meme bisarre, le tableau devrait parcourir la list d'element "users" non ?

    Voila si qqun à une explication !!!!

  2. #2
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <html:outputText value="#{users.loginUser}"/>
    au lieu de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <html:outputText value="#{userBean.loginUser}"/>

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    119
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2006
    Messages : 119
    Par défaut
    bien vu ))))
    Me voila soulagé.

    Comme quoi on s'acharne des fois et c'est tout con )))

    Merci à toi.

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

Discussions similaires

  1. jsf et les tableaux
    Par dev_newbie dans le forum JSF
    Réponses: 3
    Dernier message: 08/08/2007, 17h56
  2. Article sur les tableaux dynamiques
    Par Eric Sigoillot dans le forum Langage
    Réponses: 2
    Dernier message: 16/04/2004, 22h00
  3. Réponses: 14
    Dernier message: 01/09/2003, 22h46
  4. Les tableaux en PL/SQL
    Par GRUMLY dans le forum PL/SQL
    Réponses: 5
    Dernier message: 12/08/2002, 18h10

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