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 :

Erreur avec une balise form [Débutant(e)]


Sujet :

JSF Java

  1. #1
    Membre averti
    Avatar de stc074
    Homme Profil pro
    Codeur du dimanche
    Inscrit en
    Janvier 2009
    Messages
    1 014
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Lozère (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Codeur du dimanche

    Informations forums :
    Inscription : Janvier 2009
    Messages : 1 014
    Points : 407
    Points
    407
    Billets dans le blog
    1
    Par défaut Erreur avec une balise form
    Salut j'essaie de me mettre a JSF mais je débute.
    Pour commencer j'ai simplement mis une balise form dans une de mes JSP, j’utilise aussi JSTL 1.1 voici ma page :
    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
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
    <%@ taglib prefix="h" uri="http://java.sun.com/jsf/html" %>
    <%@ taglib prefix="f" uri="http://java.sun.com/jsf/core" %>
    <%@page contentType="text/html" pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
        <head>
        <title>ASMINISTRATION</title>
    <meta charset="UTF-8" />
    <meta name="generator" content="NETBEANS 7.0.1"/>
    <meta name="author" content=""/>
    <meta name="keywords" content=""/>
    <meta name="description" content=""/>
    <meta name="ROBOTS" content="NOINDEX, NOFOLLOW"/>
    <link rel="icon" type="image/png" href="../GFXs/favicon.png"/>
    <link rel="stylesheet" type="text/css" href="../CSS/style.css" />
    <%@include file="../../scripts/analytics.jsp" %>
        </head>
        <body>
            <%@include file="haut.jsp" %>
            <section>
                <c:catch var="ex">
                    <h1>Créer une sous-catégorie</h1>
                    <c:if test="${requestScope.sousCategorie!=null}">
                        <c:set var="sousCat" value="${requestScope.sousCategorie}" scope="page"></c:set>
                        <div id="form">
                            <c:if test="${not empty sousCat.errorMsg}">
                                <div class="erreur">
                                    <div>ERREUR(S) :</div>
                                    <p></p>
                                    ${sousCat.errorMsg}
                                </div>
                                <p></p>
                            </c:if>
                            <h:form></h:form>
                          </div>
                    </c:if>
                </c:catch>
                <c:if test="${not empty ex}">
                    <div class="erreur">
                        <div>ERREUR :</div>
                        <br/>
                        <div><c:out value="${ex.message}"></c:out></div>
                    </div>
                </c:if>
            </section>
        </body>
    </html>
    ça bug a cause de la balise <h:form> l'erreur est catchée mais le message d'erreur est vide.
    J'aimerais aussi savoir si c'est une bonne façon de faire (mélanger html, jstl et jsf).
    Merci pour votre aide

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2010
    Messages : 65
    Points : 53
    Points
    53
    Par défaut
    A mon humble avis c'est mieux d'utiliser Facelets, il y a un tutoriel super bien fait là :

    http://djo-mos.developpez.com/tutori...acelets-intro/

    En général on utilise des fichiers xhtml. Pour tes tags libs ça donnerais ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <html xmlns="http://www.w3.org/1999/xhtml"
          xmlns:ui="http://java.sun.com/jsf/facelets"
          xmlns:h="http://java.sun.com/jsf/html"
          xmlns:f="http://java.sun.com/jsf/core"
          xmlns:c="http://java.sun.com/jstl/core"
    A titre d'exemple, tu pourrais par exemple ajouter une autre taglib JSP ainsi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xmlns:jsp="http://java.sun.com/JSP/Page"
    Pour pouvoir utiliser la balise suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <jsp:include page="haut.jsp"/>
    Et par rapport à ton problème avec le form, tu dois utiliser sur toutes les balises JSF un id :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <h:form id="nomUniqueDuFormulaire"></h:form>

  3. #3
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Points : 7 275
    Points
    7 275
    Par défaut
    Citation Envoyé par dr-Padbol Voir le message
    A mon humble avis c'est mieux d'utiliser Facelets
    Là dessus, je suis d'accord. Tant qu'à se mettre à JSF, pourquoi ne pas passer directement à JSF 2, non ? Il intègre nativement Facelets. Si tu es obligé de rester sur du JSF 1, prend JSF 1.2 et ajoute y Facelets.

    Citation Envoyé par dr-Padbol Voir le message
    A titre d'exemple, tu pourrais par exemple ajouter une autre taglib JSP ainsi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xmlns:jsp="http://java.sun.com/JSP/Page"
    Pour pouvoir utiliser la balise suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <jsp:include page="haut.jsp"/>
    Si tu utilises Facelets, c'est complètement inutile d'ajouter les balises JSP !

    Citation Envoyé par dr-Padbol Voir le message
    Et par rapport à ton problème avec le form, tu dois utiliser sur toutes les balises JSF un id :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <h:form id="nomUniqueDuFormulaire"></h:form>
    Non. Tous les composants JSF ont une ID définie par défaut si tu n'en définis pas une toi même. Ajouter un ID ne changera rien.

    Pour le code de stc074, ajouter un formulaire comme ça, ça ne sert à rien. Un formulaire est destiné à encapsuler des champs de saisie, ainsi que des boutons d'action. Ici, ça ne sert à rien de mettre juste un formulaire pour faire beau...
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2010
    Messages : 65
    Points : 53
    Points
    53
    Par défaut
    Si tu utilises Facelets, c'est complètement inutile d'ajouter les balises JSP !
    Tout à fait d'accord, c'était pour l'exemple et montrer la différence entre un élément présent dans le code original est la vision JSF.

    J'utilise des templates et dans ce cadre un include correspond à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <ui:insert name="zoneConfig" />
    Non. Tous les composants JSF ont une ID définie par défaut si tu n'en définis pas une toi même. Ajouter un ID ne changera rien.
    Heu oui tu as (encore une fois) tout à fait raison, j'aurais du dire que "c'est mal" j'ai réagit trop vite en voyant qu'il n'y avait pas d'ID

Discussions similaires

  1. PB avec une balise qui interprete le code ...
    Par acado dans le forum ASP
    Réponses: 4
    Dernier message: 19/05/2006, 13h40
  2. [J2EE/JSP] Gestion des erreurs avec une base SQL server 2005
    Par critok dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 30/04/2006, 16h57
  3. [VBA-E]Erreur avec une combobox qui liste le contenu de cell
    Par Tartenpion dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 08/03/2006, 12h01
  4. problème avec une balise <A>
    Par leywos dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 13/09/2005, 09h24
  5. [Débutant][Conception] Erreur avec une classe interne
    Par Devil Redneck dans le forum Général Java
    Réponses: 5
    Dernier message: 11/06/2004, 15h45

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