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 :

problem avec rich:picklist


Sujet :

JSF Java

  1. #1
    Membre actif Avatar de lastrecrue
    Développeur Java
    Inscrit en
    Février 2006
    Messages
    360
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2006
    Messages : 360
    Points : 278
    Points
    278
    Par défaut problem avec rich:picklist
    salut tout le monde

    voila mon problème après une semaine de galère viens de s'éclaircir :
    je doit utiliser une picklist le problème c'est que les donnée de ma picklist ne sont pas statique et avant le choix dans une h:selectOneMenu la pick list est vide .. une foi la pick liste remplie j'ai le message d'erreur suivant.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    GRAVE: JSF1054: (Phase ID: PROCESS_VALIDATIONS 3, View ID: /welcomeJSF.jsp) Exception thrown during phase execution: javax.faces.event.PhaseEvent[source=com.sun.faces.lifecycle.LifecycleImpl@84cc39]
    GRAVE: Exception in the filter chain
    voila un petite exemple de code

    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
    <%-- 
        Document   : newjsp
        Created on : 30 juin 2009, 13:55:47
        Author     : beta
    --%>
     
    <%@page contentType="text/html" pageEncoding="UTF-8"%>
     
    <%@taglib prefix="f" uri="http://java.sun.com/jsf/core"%>
    <%@taglib prefix="h" uri="http://java.sun.com/jsf/html"%>
    <!-- RichFaces tag library declaration -->
    <%@ taglib uri="http://richfaces.org/a4j" prefix="a4j"%>
    <%@ taglib uri="http://richfaces.org/rich" prefix="rich"%>
     
     
     
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
        "http://www.w3.org/TR/html4/loose.dtd">
     
    <f:view>
        <h:form>
            <html>
                <head>
                    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
                    <title>JSP Page</title>
                </head>
                <body>
     
                    <h:selectOneMenu id="raisonSocial" value="#{test.numContrat}" onchange="submit()" >
                        <f:selectItems value="#{SessionBean.raisonSocial}"/>
                    </h:selectOneMenu>
                    <rich:pickList value="#{test.a}">
                        <f:selectItems value="#{test.selection}"/>
                    </rich:pickList>
     
     
                    <rich:pickList value="#{test.b}">
                        <f:selectItems value="#{test.selection2}"/>
                    </rich:pickList>
     
     
                    <h:commandButton id="valider" value="valider" /> <h:commandButton id="annuler" value="annuler"/>
                </body>
            </html>
        </h:form>
    </f:view>
    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
    68
    69
    70
    71
    72
    73
    74
    /*
     * To change this template, choose Tools | Templates
     * and open the template in the editor.
     */
    package beans;
     
    import java.util.ArrayList;
    import java.util.List;
    import javax.faces.model.SelectItem;
     
    /**
     *
     * @author beta
     */
    public class test {
     
        private List<SelectItem> selection = new ArrayList<SelectItem>();
        private List<SelectItem> selection2 = new ArrayList<SelectItem>();
        private List<String> a = new ArrayList<String>();
        private List<String> b = new ArrayList<String>();
        private String numContrat = "0";
     
        public String getNumContrat() {
            return numContrat;
        }
     
        public void setNumContrat(String numContrat) {
            this.numContrat = numContrat;
        }
     
        public List<String> getB() {
            return b;
        }
     
        public void setB(List<String> b) {
            this.b = b;
        }
     
        public List<String> getA() {
            return a;
        }
     
        public void setA(List<String> a) {
            this.a = a;
        }
     
        public List<SelectItem> getSelection2() {
            if (!numContrat.equalsIgnoreCase("")) {
                selection2.clear();
                for (int i = 0; i < 5; i++) {
                    selection2.add(new SelectItem(i, "test2" + i));
                }
            }
            return selection2;
        }
     
        public void setSelection2(List<SelectItem> selection2) {
            this.selection2 = selection2;
        }
     
        public List<SelectItem> getSelection() {
            if (!numContrat.equalsIgnoreCase("")) {
                selection.clear();
                for (int i = 0; i < Integer.parseInt(numContrat); i++) {
                    selection.add(new SelectItem(i, "test" + i));
                }
            }
            return selection;
        }
     
        public void setSelection(List<SelectItem> selection) {
            this.selection = selection;
        }
    }
    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
    68
    69
    70
    71
    72
    73
    74
    75
    76
    /*
     * To change this template, choose Tools | Templates
     * and open the template in the editor.
     */
    package beans;
     
    import java.util.ArrayList;
    import java.util.List;
    import javax.faces.model.SelectItem;
     
    /**/*
     * To change this template, choose Tools | Templates
     * and open the template in the editor.
     */
    package beans;
     
    import java.util.ArrayList;
    import java.util.List;
    import javax.faces.model.SelectItem;
     
    /**
     *
     * @author beta
     */
    public class SessionBean {
     
        private List<SelectItem> raisonSocial = new ArrayList<SelectItem>();
     
        public List<SelectItem> getRaisonSocial() {
            return raisonSocial;
        }
     
        public void setRaisonSocial(List<SelectItem> raisonSocial) {
            this.raisonSocial = raisonSocial;
        }
     
        public void initRaisonSocial() {
            for (int i = 0; i < 10; i++) {
                raisonSocial.add(new SelectItem(i, "test" + i));
     
            }
        }
     
        public SessionBean() {
            initRaisonSocial();
     
        }
    }
     
     *
     * @author beta
     */
    public class SessionBean {
     
        private List<SelectItem> raisonSocial = new ArrayList<SelectItem>();
     
        public List<SelectItem> getRaisonSocial() {
            return raisonSocial;
        }
     
        public void setRaisonSocial(List<SelectItem> raisonSocial) {
            this.raisonSocial = raisonSocial;
        }
     
        public void initRaisonSocial() {
            for (int i = 0; i < 10; i++) {
                raisonSocial.add(new SelectItem(i, "test" + i));
     
            }
        }
     
        public SessionBean() {
            initRaisonSocial();
     
        }
    }

    désolé je me suis trompé sur le code qui généré l'erreur .. cette foi ac beugue .. merci pour votre aide

  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
    Points : 5 059
    Points
    5 059

  3. #3
    Membre actif Avatar de lastrecrue
    Développeur Java
    Inscrit en
    Février 2006
    Messages
    360
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2006
    Messages : 360
    Points : 278
    Points
    278
    Par défaut
    ca change pas grand chose de mettre le from au milieux du body ...
    et pour être plus claire faut transféré un élément de la piklist en haut et appuyer sur valider pour voir le problème ...

  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
    Points : 5 059
    Points
    5 059
    Par défaut
    tu peux afficher la trace complète..
    Il te faut aussi définir un converter pour l'objet de la liste.

  5. #5
    Membre actif Avatar de lastrecrue
    Développeur Java
    Inscrit en
    Février 2006
    Messages
    360
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2006
    Messages : 360
    Points : 278
    Points
    278
    Par défaut
    voila la trace complète si non je comprend pas trop pourquoi crée un converter ???

    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
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    GRAVE: JSF1054: (Phase ID: PROCESS_VALIDATIONS 3, View ID: /newjsp.jsp) Exception thrown during phase execution: javax.faces.event.PhaseEvent[source=com.sun.faces.lifecycle.LifecycleImpl@1e006d1]
    GRAVE: Exception in the filter chain
    javax.servlet.ServletException
            at javax.faces.webapp.FacesServlet.service(FacesServlet.java:277)
            at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:431)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:337)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:218)
            at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
            at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
            at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:368)
            at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:495)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:250)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:218)
            at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:250)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:218)
            at org.apache.catalina.core.StandardWrapperValve.preInvoke(StandardWrapperValve.java:460)
            at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:139)
            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:186)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:719)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:657)
            at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:96)
            at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:98)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:187)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:719)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:657)
            at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:651)
            at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1030)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:142)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:719)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:657)
            at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:651)
            at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1030)
            at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:325)
            at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:242)
            at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:180)
            at com.sun.grizzly.http.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:633)
            at com.sun.grizzly.http.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:570)
            at com.sun.grizzly.http.DefaultProcessorTask.process(DefaultProcessorTask.java:827)
            at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:152)
            at com.sun.enterprise.v3.services.impl.GlassfishProtocolChain.executeProtocolFilter(GlassfishProtocolChain.java:71)
            at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:103)
            at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:89)
            at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76)
            at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:67)
            at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:56)
            at com.sun.grizzly.util.WorkerThreadImpl.processTask(WorkerThreadImpl.java:325)
            at com.sun.grizzly.util.WorkerThreadImpl.run(WorkerThreadImpl.java:184)
    Caused by: java.util.NoSuchElementException
            at javax.faces.component.SelectItemsIterator.next(SelectItemsIterator.java:130)
            at javax.faces.component.SelectItemsIterator.next(SelectItemsIterator.java:157)
            at javax.faces.component.SelectItemsIterator.next(SelectItemsIterator.java:61)
            at javax.faces.component.SelectUtils.matchValue(SelectUtils.java:82)
            at javax.faces.component.UISelectMany.validateValue(UISelectMany.java:465)
            at javax.faces.component.UIInput.validate(UIInput.java:875)
            at javax.faces.component.UIInput.executeValidate(UIInput.java:1072)
            at javax.faces.component.UIInput.processValidators(UIInput.java:672)
            at javax.faces.component.UIForm.processValidators(UIForm.java:235)
            at org.ajax4jsf.component.AjaxViewRoot$3.invokeContextCallback(AjaxViewRoot.java:439)
            at org.ajax4jsf.component.AjaxViewRoot.processPhase(AjaxViewRoot.java:238)
            at org.ajax4jsf.component.AjaxViewRoot.processValidators(AjaxViewRoot.java:455)
            at com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:76)
            at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
            at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
            at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
            ... 44 more
    GRAVE: StandardWrapperValve[Faces Servlet]: PWC1406: Servlet.service() for servlet Faces Servlet threw exception
    java.util.NoSuchElementException
            at javax.faces.component.SelectItemsIterator.next(SelectItemsIterator.java:130)
            at javax.faces.component.SelectItemsIterator.next(SelectItemsIterator.java:157)
            at javax.faces.component.SelectItemsIterator.next(SelectItemsIterator.java:61)
            at javax.faces.component.SelectUtils.matchValue(SelectUtils.java:82)
            at javax.faces.component.UISelectMany.validateValue(UISelectMany.java:465)
            at javax.faces.component.UIInput.validate(UIInput.java:875)
            at javax.faces.component.UIInput.executeValidate(UIInput.java:1072)
            at javax.faces.component.UIInput.processValidators(UIInput.java:672)
            at javax.faces.component.UIForm.processValidators(UIForm.java:235)
            at org.ajax4jsf.component.AjaxViewRoot$3.invokeContextCallback(AjaxViewRoot.java:439)
            at org.ajax4jsf.component.AjaxViewRoot.processPhase(AjaxViewRoot.java:238)
            at org.ajax4jsf.component.AjaxViewRoot.processValidators(AjaxViewRoot.java:455)
            at com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:76)
            at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
            at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
            at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
            at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:431)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:337)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:218)
            at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
            at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
            at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:368)
            at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:495)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:250)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:218)
            at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:250)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:218)
            at org.apache.catalina.core.StandardWrapperValve.preInvoke(StandardWrapperValve.java:460)
            at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:139)
            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:186)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:719)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:657)
            at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:96)
            at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:98)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:187)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:719)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:657)
            at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:651)
            at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1030)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:142)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:719)
            at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:657)
            at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:651)
            at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1030)
            at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:325)
            at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:242)
            at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:180)
            at com.sun.grizzly.http.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:633)
            at com.sun.grizzly.http.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:570)
            at com.sun.grizzly.http.DefaultProcessorTask.process(DefaultProcessorTask.java:827)
            at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:152)
            at com.sun.enterprise.v3.services.impl.GlassfishProtocolChain.executeProtocolFilter(GlassfishProtocolChain.java:71)
            at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:103)
            at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:89)
            at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76)
            at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:67)
            at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:56)
            at com.sun.grizzly.util.WorkerThreadImpl.processTask(WorkerThreadImpl.java:325)
            at com.sun.grizzly.util.WorkerThreadImpl.run(WorkerThreadImpl.java:184)

  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
    Points : 5 059
    Points
    5 059
    Par défaut
    la liste prend en valeur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     private String numContrat = "0";
    la déclaration des selectItems met en valeur i objet Integer
    :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     for (int i = 0; i < 10; i++) {
                raisonSocial.add(new SelectItem(i, "test" + i));
     
            }

  7. #7
    Membre actif Avatar de lastrecrue
    Développeur Java
    Inscrit en
    Février 2006
    Messages
    360
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2006
    Messages : 360
    Points : 278
    Points
    278
    Par défaut
    quand on affiche la liste la premier foi elle est vide
    quand on change la sélection de notre selectitem. une fois a " on a dans la picklist dans le chois de test 3 3 element ... une fois une elment selection et passe dans la liste de selction de la pick list on a le beugue detaillé dans le dernier message ... si c'ets possible essai de cree lme projet avec les code donnée dans le premier post

    voisi le faces-config

    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
    <faces-config version="1.2" 
        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">
        <managed-bean>
            <managed-bean-name>SessionBean</managed-bean-name>
            <managed-bean-class>beans.SessionBean</managed-bean-class>
            <managed-bean-scope>session</managed-bean-scope>
        </managed-bean>
     
        <managed-bean>
            <managed-bean-name>RequestWelcomJSF</managed-bean-name>
            <managed-bean-class>beans.RequestWelcomJSF</managed-bean-class>
            <managed-bean-scope>request</managed-bean-scope>
        </managed-bean>
     
     
     
         <managed-bean>
            <managed-bean-name>test</managed-bean-name>
            <managed-bean-class>beans.test</managed-bean-class>
            <managed-bean-scope>request</managed-bean-scope>
        </managed-bean>
     
    </faces-config>
    voici mon web.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
    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
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.5" 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-app_2_5.xsd">
        <context-param>
            <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
            <param-value>server</param-value>
        </context-param>
        <context-param>
            <param-name>org.richfaces.SKIN</param-name>
            <param-value>blueSky</param-value>
        </context-param>
        <context-param>
            <param-name>org.richfaces.CONTROL_SKINNING</param-name>
            <param-value>enable</param-value>
        </context-param>
        <filter>
            <display-name>RichFaces Filter</display-name>
            <filter-name>richfaces</filter-name>
            <filter-class>org.ajax4jsf.Filter</filter-class>
        </filter>
        <filter-mapping>
            <filter-name>richfaces</filter-name>
            <servlet-name>Faces Servlet</servlet-name>
            <dispatcher>REQUEST</dispatcher>
            <dispatcher>FORWARD</dispatcher>
            <dispatcher>INCLUDE</dispatcher>
        </filter-mapping>
        <listener>
            <listener-class>com.sun.faces.config.ConfigureListener</listener-class>
        </listener>
    <!-- Faces Servlet -->
        <servlet>
            <servlet-name>Faces Servlet</servlet-name>
            <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
            <load-on-startup>1</load-on-startup>
        </servlet>
        <servlet-mapping>
            <servlet-name>Faces Servlet</servlet-name>
            <url-pattern>/faces/*</url-pattern>
        </servlet-mapping>
        <session-config>
            <session-timeout>
                30
            </session-timeout>
        </session-config>
        <welcome-file-list>
            <welcome-file>faces/welcomeJSF.jsp</welcome-file>
        </welcome-file-list>
    </web-app>
    reste qu'a ajouter les.jar de rich face et les jar de jsf pour que le code projet soit pret a être exécuter .. je crios qu'un petit teste s'impose pour vraiment comprendre mon problem .. je crois que ca a un rapport avec l'implémentation de la pickliste .. une fois charger vide la premier fois .. il comme un problème apres si on charge des éléments dedan ...

  8. #8
    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
    Points : 5 059
    Points
    5 059
    Par défaut
    Bon, si tu as les bons jars de Richfaces, et que ton projet est bien configuré, vérifie le type de la valeur de tes selectItems:

    Caused by: java.util.NoSuchElementException
    at javax.faces.component.SelectItemsIterator.next(SelectItemsIterator.java:130)
    at javax.faces.component.SelectItemsIterator.next(SelectItemsIterator.java:157)
    at javax.faces.component.SelectItemsIterator.next(SelectItemsIterator.java:61)
    at javax.faces.component.SelectUtils.matchValue(SelectUtils.java:82)
    at javax.faces.component.UISelectMany.validateValue(UISelectMany.java:465)
    at javax.faces.component.UIInput.validate(UIInput.java:875)

  9. #9
    Membre actif Avatar de lastrecrue
    Développeur Java
    Inscrit en
    Février 2006
    Messages
    360
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2006
    Messages : 360
    Points : 278
    Points
    278
    Par défaut
    je me suis souvent posé cette question pour le in je les declare :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    private List<SelectItem> selection = new ArrayList<SelectItem>();
    pour le resultat du out :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    private List<String> b = new ArrayList<String>();

  10. #10
    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
    Points : 5 059
    Points
    5 059
    Par défaut
    ouii mais

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     for (int i = 0; i < 5; i++) {
                    selection2.add(new SelectItem(i, "test2" + i));
                }
    tu donne la valeur du selectItem un Integer pas un String:


    la signature du constructeur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     public SelectItem(Object value, String label)

  11. #11
    Membre actif Avatar de lastrecrue
    Développeur Java
    Inscrit en
    Février 2006
    Messages
    360
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2006
    Messages : 360
    Points : 278
    Points
    278
    Par défaut
    pourquoi Intgere est un objet puis mon problème comme j'ai déjà ne se lance que si la premier fois que j'affiche ma picklist est vide ... si non ca marche très bien ...

  12. #12
    Membre actif Avatar de lastrecrue
    Développeur Java
    Inscrit en
    Février 2006
    Messages
    360
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2006
    Messages : 360
    Points : 278
    Points
    278
    Par défaut
    jai trouver quelqu'un qui a le même problem que moi dans le fofo :
    http://www.developpez.net/forums/d52...ist-richfaces/

  13. #13
    Membre actif Avatar de lastrecrue
    Développeur Java
    Inscrit en
    Février 2006
    Messages
    360
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2006
    Messages : 360
    Points : 278
    Points
    278
    Par défaut
    j'ai trouver la solution :
    faut mettre l'attribue rendred du h:form ou se trouve la picklist a false quand la liste sera vide ...

  14. #14
    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
    Points : 5 059
    Points
    5 059
    Par défaut
    ie ?
    ton form était avec rendered=false.?

  15. #15
    Membre actif Avatar de lastrecrue
    Développeur Java
    Inscrit en
    Février 2006
    Messages
    360
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2006
    Messages : 360
    Points : 278
    Points
    278
    Par défaut
    Citation Envoyé par Sniper37 Voir le message
    ie ?
    ton form était avec rendered=false.?
    mais non un pickliste vide est un pick liste qui beugue si on le rempli de liste<selctionitem>, c'est le teste que j'ia mis plus haut pour vérifier. un picklist avec un rendrerd false si il est vide et un picklist hors cycle ajax une fois sont rendred mis a true. la seul solution que j'ai trouver c'est de mettre le rendred du form afalse tan que le picklist est vide .. le plus etonant de tous c'est que une foi le picklist est charger non vide la premier foi on peu tres bien le metre en etat vide et le remplire apres a vlonté ... apres je suis OK que je suis pas tres claire mais faut avoir les même bléme que moi pour comprendre ...

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

Discussions similaires

  1. Probleme avec Rich:calendar
    Par hector_le_dresseur dans le forum JSF
    Réponses: 7
    Dernier message: 07/05/2009, 17h02
  2. problem avec rich:paint2D
    Par iviath dans le forum JSF
    Réponses: 1
    Dernier message: 20/10/2008, 17h04
  3. Probleme avec <rich:fileUpload>
    Par hibao dans le forum JSF
    Réponses: 10
    Dernier message: 16/10/2008, 12h26
  4. Probleme avec Rich:panelMenu
    Par midos dans le forum JSF
    Réponses: 1
    Dernier message: 08/09/2008, 08h29
  5. Probleme avec rich:fileupload
    Par solarien dans le forum JSF
    Réponses: 6
    Dernier message: 21/08/2008, 17h06

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