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 :

Affichage d'un champ avec jsf 1.2


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 Affichage d'un champ avec jsf 1.2
    Bonjour,

    J'ai decider de passer de jsf 1.1 à jsf 1.2 ( migration de tomcat de 5.5 à 6.0 ).
    Cette migration me fait deconner le premier formulaire.

    Voila le formulaire login.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
     
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <%@taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
    <%@taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
     
    <html>
    	<body>
    		<f:view>
     
    				<h:outputText value="Identifiant / login : " />
    				<h:inputText value="#{userBean.loginUser}" />
    				<br/>
     
    				<h:outputText value="Mot de passe : " />
    				<h:inputSecret value="#{userBean.passwordUser}" />
    				<br/>
     
    				<h:commandButton action="#{userBean.validate}" value="Connection" />
    				<h:commandButton action="inscription" value="Inscription" />
     
    		</f:view>
    	</body>
    </html>
    Rien de sorcier.

    Voila le fichier de configuration jsf : faces-config.xml :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <?xml version="1.0" encoding="UTF-8"?>
     
    <!DOCTYPE faces-config PUBLIC
        "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
        "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
     
    <faces-config>
    	<managed-bean>
    		<managed-bean-name>userBean</managed-bean-name>
    		<managed-bean-class>fr.my.manager.UserBean</managed-bean-class>
    		<managed-bean-scope>session</managed-bean-scope>
    	</managed-bean>
    </faces-config>
    Le web.xml : ( généré par eclipse. )

    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
     
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    	<display-name>JSF_HIBERNATE_SPRING</display-name>
     
    	<context-param>
    		<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
    		<param-value>client</param-value>
    	</context-param>
     
    	<servlet>
    		<servlet-name>Faces Servlet</servlet-name>
    		<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    		<load-on-startup>1</load-on-startup>
    	</servlet>
     
    	<context-param>
    	    <param-name>javax.faces.CONFIG_FILES</param-name>
    	    <param-value>/WEB-INF/faces-config.xml</param-value>
      	</context-param>
     
    	<!-- Mapping jsf pour les servlets -->
    	<servlet-mapping>
    		<servlet-name>Faces Servlet</servlet-name>
    		<url-pattern>/faces/*</url-pattern>
    	</servlet-mapping>
     
    	<!-- Fichier d'accueil-->
    	<welcome-file-list>
    		<welcome-file>index.html</welcome-file>
    	</welcome-file-list>
    </web-app>
    et pour finir le bean manager qui correspond à mon formulaire : 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
     
    package fr.my.manager;
     
    public class UserBean {
     
    	private int idUser;
    	private int idRole;
    	private String loginUser;
    	private String passwordUser;
     
    	public UserBean() {
    	}
     
    	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 validate(){
    		if (this.loginUser.equals("romain") && this.passwordUser.equals("13041983")){
    			return "loginSuccess";
    		}
    		else{
    			return "loginFail";
    		}
    	}
    }
    Mon probleme :

    Lors de l'affichage de la page ça affiche dans le champs du login ( le premier ) ça : "#{userBean.loginUser}".

    Je comprend pas on dirai qu'il comprend pas que c'est un appel au bean...
    Si qqun à une idée ?

  2. #2
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2010
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2010
    Messages : 28
    Par défaut <h:form> manquant
    bonjour

    je crois qu'il te manque le <h:form>

    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
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <%@taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
    <%@taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
     
    <html>
    	<body>
    		<f:view>
    			<h:form>
    				<h:outputText value="Identifiant / login : " />
    				<h:inputText value="#{userBean.loginUser}" />
    				<br/>
    				
    				<h:outputText value="Mot de passe : " />
    				<h:inputSecret value="#{userBean.passwordUser}" />
    				<br/>
    				
    				<h:commandButton action="#{userBean.validate}" value="Connection" />
    				<h:commandButton action="inscription" value="Inscription" />
    			</h:form>
    		</f:view>
    	</body>
    </html>

  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
    c'etait bien vu j'y es presque cru mais non ça ne marche pas avec ((
    Cela dit tu as bien fait de me le dire parceque je l'avais completement zappé.

    Le plus bisarre c'est que si je passe des point d'arret dans la methode "validate" de mon bean manager UserBean et bien il rentre bien. Donc le bean manager est bien declaré alors pourquoi il me trouve pas mes champs ????? La serieux je comprends pas ce qu'il manque...

    Je veux aussi preciser que les regles de navigations ( que je n'ai pas mis dans le fichiers faces-config.xml pour plus de clarté ) fonctionne parfaitement si j'initilialise les variables login et password. Voila donc en fait la seule chose que jsf n'arrive pas à faire c'est remplir mes champs ... et y associer les valeurs tapé lors de la soumission du formulaire...


  4. #4
    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
    sans h:form, aucune valeur n'est envoyée au serveur, et le bon comportement des commandButton et règles de navigation n'est pas assuré.

  5. #5
    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
    justement je l'ai bien ajouté comme il faut mais ça n'empeche pas l'affichage des champs : #{bean.champ} ... Je comprend pas. Tout les comportements en dehors marche merveilleusement bien. Il n'y a que l'acces aux données du bean qui deconne... Vraiment la je seche...

    Je me tate à revenir à JSF 1.1 au moins ça marchait...
    Vraiment j'ai essayé d'autre formulaire prechargé tout ça et meme resultat je me tate la commande d'acces au champs du bean... Je craque

  6. #6
    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
    change le doctype du faecs-config pour mettre celui qui est compatible avec JSF 1.3, refait les tests, si tu as une erreur, post l'exception, sinon décrit bien l'enchainement et ce qui ne marche pas.

    Il n'y a pas de différence entre JSF 1.1 et JSF 1.2 à ce niveau là..

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

Discussions similaires

  1. Affichage rapport depuis Ireport avec jsf
    Par sassou2 dans le forum JSF
    Réponses: 0
    Dernier message: 13/08/2011, 18h40
  2. Problème d'affichage d'une liste avec JSF
    Par passion_info dans le forum JSF
    Réponses: 7
    Dernier message: 20/07/2011, 10h12
  3. affichage d'un champ avec liste de choix dans un état
    Par DonQuiShoote dans le forum IHM
    Réponses: 16
    Dernier message: 20/05/2007, 23h39
  4. Affichage de nouveau champ de formulaire avec une case à cocher
    Par breizhgen dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 04/09/2006, 21h46
  5. Réponses: 7
    Dernier message: 06/03/2006, 15h38

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