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 :

Probleme d'instanciation du bean


Sujet :

JSF Java

  1. #1
    Futur Membre du Club
    Inscrit en
    Mars 2007
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 3
    Par défaut Probleme d'instanciation du bean
    Bonjour,j'ai pas mal essayer de resoudre le probleme mais j'y arrive pas.
    voici l'erreur que me donne Tomcat5.5.9
    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
     
    javax.servlet.ServletException: javax.servlet.jsp.JspException: javax.faces.FacesException: javax.faces.FacesException: Can't instantiate class: 'core.walid.NwindManagedBean'.. core.walid.NwindManagedBean
    	org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:844)
    	org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:781)
    	org.apache.jsp.index_jsp._jspService(index_jsp.java:91)
    	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
    	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
    	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    	org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:362)
    	com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:322)
    	com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:130)
    	com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)
    	com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
    	com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
    	javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)
    	org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:362)
     
     
    cause mère 
     
    javax.faces.el.EvaluationException: javax.faces.FacesException: javax.faces.FacesException: Can't instantiate class: 'core.walid.NwindManagedBean'.. core.walid.NwindManagedBean
    	com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:206)
    	com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:154)
    	javax.faces.component.UIData.getValue(UIData.java:527)
    	javax.faces.component.UIData.getDataModel(UIData.java:856)
    	javax.faces.component.UIData.setRowIndex(UIData.java:379)
    	com.sun.faces.renderkit.html_basic.TableRenderer.encodeBegin(TableRenderer.java:65)
    	javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:683)
    	javax.faces.component.UIData.encodeBegin(UIData.java:681)
    	javax.faces.webapp.UIComponentTag.encodeBegin(UIComponentTag.java:591)
    	javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:543)
    	com.sun.faces.taglib.html_basic.DataTableTag.doEndTag(DataTableTag.java:491)
    	org.apache.jsp.index_jsp._jspx_meth_h_dataTable_0(index_jsp.java:161)
    	org.apache.jsp.index_jsp._jspx_meth_c_view_0(index_jsp.java:116)
    	org.apache.jsp.index_jsp._jspService(index_jsp.java:80)
    	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
    	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
    	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    	org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:362)
    	com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:322)
    	com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:130)
    	com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)
    	com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
    	com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
    	javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)
    	org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:362)
    Voici le bean NwindManagedBean que j'utilise pour acceder a la base de données en utilisant Api JDBC
    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
    import java.sql.*;
    import javax.sql.*;
    import java.util.ArrayList;
    import java.util.Collection;
    import java.io.*;
    import javax.servlet.jsp.jstl.sql.*;
    /**
     *
     * @author XPPRESP3
     */
    public class NwindManagedBean implements Serializable{
        private String tableName="Customers";
        private ResultSet resultSet;
        private Connection connection;
        /** Creates a new instance of NwindManagedBean */
        public NwindManagedBean() {
     
        }
        public String getTableName(){
        return tableName;
        }
        public void setTableName(String tableName){
        this.tableName=tableName;
        }
        public void open(){
        String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
        String url = "jdbc:odbc:Nwind";
        String username = "";
        String password = "";
        try{
            Class.forName(driver);
            connection =DriverManager.getConnection(url,username,password);}
        catch(Exception e){System.out.println(e);}
        }
        public void search(){
          try{ Statement statement=connection.createStatement();
           String query ="select * from "+tableName;
            resultSet=statement.executeQuery(query);
     
        }
        catch(Exception cnfe) {};
        }
        public ResultSet getResultSet(){
            open();
            search();
            return resultSet;
        }
        public void showResults(){
            int i=1;
           try{ while(resultSet.next())
            {
            System.out.println(resultSet.getString(i));
            i++;
            }
           }
           catch(Exception e){System.out.println("erreur sql"+e);}
        }
    }
    ici ma page jsf qui utilise dataTable pour afficher la liste des clients
    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
    <%@ taglib uri="http://java.sun.com/jsf/core" prefix="c" %>
    <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
     
    <html>
       <HEAD><TITLE>Northwind Customers</title>
        </HEAD>
        <body>
            <center>
                <table border="5">
                    <tr><th class="Northwind customers"></th></tr>
                </table>
                <p>
                <c:view>
                    <h:dataTable value="#{NwindManagedBean.resultSet}"
                    var="dbRow"
                    border="1"
                    >
                    <h:column>
                    <c:facet name="header">
                    <c:verbatim>Company name</c:verbatim>
                    </c:facet>
                    <h:outputText value="#{dbRow.CompanyName}"/>
                    </h:column>
                    <h:column>
                    <c:facet name="header">
                    <c:verbatim>Address</c:verbatim>
                    </c:facet>
                    <h:outputText 
                    value="#{dbRow.Address}"/>
                    </h:column>
                    <h:column>
                    <c:facet name="header">
                    <c:verbatim>City</c:verbatim>
                    </c:facet>
                    <h:outputText 
                    value="#{dbRow.City}"/>
                    </h:column>
                    </h:dataTable>
                </c:view>
                </center>
        </body>
    </html>
    enfin le faces-config.xml ou je declare le bean
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <faces-config>
        <managed-bean>
            <managed-bean-name>NwindManagedBean</managed-bean-name>
            <managed-bean-class>core.walid.NwindManagedBean</managed-bean-class>
            <managed-bean-scope>request</managed-bean-scope>
        </managed-bean>
        </faces-config>
    si pouvait m'aider je serais tres reconnaissant!!

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    18
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 18
    Par défaut
    A priori il faut que tu instancie ton objet connection ainsi que ton objet resulset dans ton bean.

  3. #3
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Par défaut
    il est dans quel package ton bean, car dans ton faces-config.xml tu le déclares
    core.walid.NwindManagedBean

  4. #4
    Futur Membre du Club
    Inscrit en
    Mars 2007
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 3
    Par défaut
    dans core.walid.NwindManagedBean pas de probleme de ce coté!!

  5. #5
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Par défaut
    alors je soupsonne que resultSet soit nul lors de l'invokation du bean

    il faudrait l'initialisé dans ton constructeur

  6. #6
    Futur Membre du Club
    Inscrit en
    Mars 2007
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 3
    Par défaut
    j'ai changé le nom du package et ca a marché!!merci pour ton interet

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

Discussions similaires

  1. Probleme avec deserialiser un bean
    Par magnus2005 dans le forum Services Web
    Réponses: 3
    Dernier message: 28/04/2009, 17h50
  2. Probleme Struts avec les beans
    Par GTJuanpablo dans le forum Struts 1
    Réponses: 2
    Dernier message: 05/01/2007, 16h04
  3. [debutant]probleme recuperation d'un bean
    Par solawe dans le forum JSF
    Réponses: 1
    Dernier message: 17/12/2006, 13h53
  4. [jsf] Probleme d'instanciation
    Par maximus001ma dans le forum JSF
    Réponses: 2
    Dernier message: 06/07/2006, 18h24
  5. Réponses: 3
    Dernier message: 13/08/2005, 15h18

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