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 :

NullPointerException pas de données


Sujet :

JSF Java

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    318
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 318
    Par défaut NullPointerException pas de données
    Bonjour,

    Quand j’extraie une donnée depuis une BD Oracle, j'ai cette erreur suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    java.lang.NullPointerException
    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
    java.lang.NullPointerException
    	at csl.ConnectionBean.getAllO(ConnectionBean.java:81)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    	at java.lang.reflect.Method.invoke(Method.java:597)
    	at javax.el.BeanELResolver.getValue(BeanELResolver.java:302)
    	at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
    	at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
    	at com.sun.el.parser.AstValue.getValue(AstValue.java:116)
    	at com.sun.el.parser.AstValue.getValue(AstValue.java:163)
    	at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:219)
    	at org.jboss.weld.el.WeldValueExpression.getValue(WeldValueExpression.java:55)
    	at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109)
    	at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:194)
    	at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:182)
    	at javax.faces.component.UIOutput.getValue(UIOutput.java:169)
    	at com.sun.faces.renderkit.html_basic.HtmlBasicInputRenderer.getValue(HtmlBasicInputRenderer.java:205)
    	at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.getCurrentValue(HtmlBasicRenderer.java:355)
    	at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeEnd(HtmlBasicRenderer.java:164)
    	at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:875)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1763)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1759)
    	at org.primefaces.component.datatable.DataTableRenderer.encodeRegularCell(DataTableRenderer.java:754)
    	at org.primefaces.component.datatable.DataTableRenderer.encodeRow(DataTableRenderer.java:713)
    	at org.primefaces.component.datatable.DataTableRenderer.encodeTbody(DataTableRenderer.java:622)
    	at org.primefaces.component.datatable.DataTableRenderer.encodeRegularTable(DataTableRenderer.java:229)
    	at org.primefaces.component.datatable.DataTableRenderer.encodeMarkup(DataTableRenderer.java:209)
    	at org.primefaces.component.datatable.DataTableRenderer.encodeEnd(DataTableRenderer.java:103)
    	at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:875)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1763)
    	at javax.faces.render.Renderer.encodeChildren(Renderer.java:168)
    	at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:845)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1756)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1759)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1759)
    	at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:401)
    	at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
    	at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:288)
    	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:121)
    	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
    	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
    	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:594)
    	at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1539)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:281)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
    	at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
    	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
    	at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:98)
    	at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:91)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:162)
    	at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:330)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:231)
    	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:174)
    	at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:828)
    	at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:725)
    	at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1019)
    	at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:225)
    	at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
    	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
    	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
    	at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
    	at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
    	at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
    	at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
    	at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
    	at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
    	at java.lang.Thread.run(Thread.java:662)
    Page1.xhtml (là où j'affiche cette donnée)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
                <h:outputText value="#{ConnectionBean.allO}" />
    ConnectionBean.java

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    private DatabaseConnection oDatabaseConnection;
    .
    .
    .
    .
    public String getAllO() throws Exception
         {        
     
           return (oDatabaseConnection.getAllO());
     
         }
    DatabaseConnection.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
    public String getAllO() throws SQLException 
         {        
     
     
             try {  
     
                      // ArrayList<String> unelist = new ArrayList();
                try {
                    statement = getMoConnection().createStatement();
                } catch (SQLException ex) {
                   // Logger.getLogger(ManagedBeanO.class.getName()).log(Level.SEVERE, null, ex);
                }
                       Statement stmt = null;                     
                try {
                    stmt = getMoConnection().createStatement();
                } catch (SQLException ex) {
     
                }
                       ResultSet result = null;  
                try {
                    result = stmt.executeQuery("SELECT TABLE_NAME FROM all_tables where TABLE_NAME='DUAL'");
                } catch (SQLException ex) {
     
     
                       return result.toString();         
                      }       
                 finally {             
                try {
                    moConnection.close();
                } catch (SQLException ex) {
     
                }
                         }   
     
         }
    Je sais pas d'où vient le problème, alors que je me suis déjà connecté à Oracle dans un autre onglet, est-ce que c'est à cause du fait qu'il trouve pas l'instance getMoConnection() est vide ?

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    318
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 318
    Par défaut
    Finalement, quand je me suis connecté à Oracle, j'ai rafraichit l'onglet où se trouve la page1.xhtml, et j'ai eu dans mon champs texte : oracle.jdbc.driver.OracleResultSetImpl@1c24a19

    Alors que je dois voir comme résultat "Dual" .....

  3. #3
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2008
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2008
    Messages : 162
    Par défaut
    Bonjour maserati,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    private DatabaseConnection oDatabaseConnection;
    .
    .
    .
    .
    public String getAllO() throws Exception
         {        
     
           return (oDatabaseConnection.getAllO());
     
         }
    Je pense que ton erreur NullPointerException vient de ton objet oDatabaseConnection qui est mal instancié ou même pas du tout (C'est une supposition, vu que je n'ai accès au code montrant les instanciations de ton objet)


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     return result.toString();
    Finalement, quand je me suis connecté à Oracle, j'ai rafraichit l'onglet où se trouve la page1.xhtml, et j'ai eu dans mon champs texte : oracle.jdbc.driver.OracleResultSetImpl@1c24a19
    La méthode toString, appelée sur un objet affiche par défaut la référence de l'objet et non son libellé.
    Ici nous voyons bien que tu appelles la méthode toString sur l'objet de type "ResultSet" la méthode toString, or je pense ce qui t'intéresse, c'est de récupérer le contenu du Résultat.

    Je te conseille d'essayer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    result.getString("TABLE_NAME");
    Ca serait déjà plus cohérent, et si ça ne marche pas, d'utiliser un alias.

  4. #4
    Membre très actif
    Profil pro
    Inscrit en
    Février 2010
    Messages
    766
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 766
    Par défaut
    Bonjour,

    CoonnectionBean.java ligne 81 il y a quoi ?

    Même chose ton objet ou un objet à l'intérieur n'est pas instancié a ce moment là.

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

Discussions similaires

  1. pb de syntaxe XML ne reconnais pas les données ..
    Par lolodelp dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 19/06/2006, 11h24
  2. y'a pas les données quand je veux imprimer
    Par StyleXP dans le forum Bases de données
    Réponses: 38
    Dernier message: 25/03/2006, 19h15
  3. probleme XPath, j'obtiens pas ma données ?
    Par Bruno13 dans le forum Langage
    Réponses: 7
    Dernier message: 02/02/2006, 14h25
  4. XMLEncoder ne sauvegarde pas la donnée d'un PlainDocument.
    Par mitje dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 27/01/2006, 04h06
  5. [ORA-01403] Pas de données trouvées ; et alors ?
    Par szdavid dans le forum Oracle
    Réponses: 6
    Dernier message: 02/08/2005, 11h20

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