Exception "java.lang.NullPointerException"

Fermé
MayaInfo - 14 mai 2012 à 01:06
 yassine - 13 août 2012 à 14:30
Bonjour,

Je suis entrain de développez une application en JEE sous Hibernate , Spring , JSF primefaces mais lors de l'exécution j'obtient l'exception suivante:

GRAVE: "Servlet.service()" pour la servlet jsp a lancé une exception
java.lang.NullPointerException
	at ma.it.bean.NewsBean.init(NewsBean.java:25)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:297)
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:250)
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:144)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:350)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1329)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:471)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
	at org.springframework.beans.factory.support.AbstractBeanFactory$2.getObject(AbstractBeanFactory.java:302)
	at org.springframework.web.context.request.AbstractRequestAttributesScope.get(AbstractRequestAttributesScope.java:43)
	at org.springframework.web.context.request.SessionScope.get(SessionScope.java:90)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:298)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
	at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:881)
	at org.springframework.beans.factory.access.el.SpringBeanELResolver.getValue(SpringBeanELResolver.java:58)
	at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:54)
	at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:58)
	at org.apache.el.parser.AstIdentifier.getValue(AstIdentifier.java:69)
	at org.apache.el.parser.AstValue.getValue(AstValue.java:112)
	at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
	at org.apache.jasper.el.JspValueExpression.getValue(JspValueExpression.java:101)
	at com.sun.faces.application.ApplicationImpl.createComponent(ApplicationImpl.java:198)
	at javax.faces.webapp.UIComponentELTag.createComponent(UIComponentELTag.java:215)
	at javax.faces.webapp.UIComponentClassicTagBase.createChild(UIComponentClassicTagBase.java:454)
	at javax.faces.webapp.UIComponentClassicTagBase.findComponent(UIComponentClassicTagBase.java:635)
	at javax.faces.webapp.UIComponentClassicTagBase.doStartTag(UIComponentClassicTagBase.java:1033)
	at org.apache.jsp.Views.News_jsp._jspx_meth_p_005fdataTable_005f0(News_jsp.java:210)
	at org.apache.jsp.Views.News_jsp._jspx_meth_h_005fform_005f0(News_jsp.java:170)
	at org.apache.jsp.Views.News_jsp._jspx_meth_f_005fview_005f0(News_jsp.java:125)
	at org.apache.jsp.Views.News_jsp._jspService(News_jsp.java:88)
	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388)
	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
	at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
	at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
	at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
	at com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:414)
	at com.sun.faces.application.ViewHandlerImpl.executePageToBuildView(ViewHandlerImpl.java:455)
	at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:139)
	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:108)
	at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:266)
	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:159)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
	at java.lang.Thread.run(Unknown Source)
9 mai 2012 16:17:00 com.sun.faces.lifecycle.LifecycleImpl phase
ATTENTION: executePhase(RENDER_RESPONSE 6,com.sun.faces.context.FacesContextImpl@1bef4c6) threw exception
javax.faces.FacesException: org.apache.jasper.JasperException: An exception occurred processing JSP page /Views/News.jsp at line 15
 
12: <body>
13: 	<f:view>
14: 		<h:form prependId="false">
15: 			<p:dataTable id="basic" var="News" binding="#{NewsBean.newsTable}"
16: 				value="#{NewsBean.newsList}">
17: 				<p:column id="modelHeader">
18: 					<f:facet name="idNews">  
 
 
Stacktrace:
	at com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:419)
	at com.sun.faces.application.ViewHandlerImpl.executePageToBuildView(ViewHandlerImpl.java:455)
	at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:139)
	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:108)
	at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:266)
	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:159)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
	at java.lang.Thread.run(Unknown Source)
Caused by: org.apache.jasper.JasperException: An exception occurred processing JSP page /Views/News.jsp at line 15
 
12: <body>
13: 	<f:view>
14: 		<h:form prependId="false">
15: 			<p:dataTable id="basic" var="News" binding="#{NewsBean.newsTable}"
16: 				value="#{NewsBean.newsList}">
17: 				<p:column id="modelHeader">
18: 					<f:facet name="idNews">  
 
 
Stacktrace:
	at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:521)
	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:430)
	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
	at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
	at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
	at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
	at com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:414)
	... 18 more
Caused by: javax.faces.FacesException: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'NewsBean': Invocation of init method failed; nested exception is java.lang.NullPointerException
	at com.sun.faces.application.ApplicationImpl.createComponent(ApplicationImpl.java:209)
	at javax.faces.webapp.UIComponentELTag.createComponent(UIComponentELTag.java:215)
	at javax.faces.webapp.UIComponentClassicTagBase.createChild(UIComponentClassicTagBase.java:454)
	at javax.faces.webapp.UIComponentClassicTagBase.findComponent(UIComponentClassicTagBase.java:635)
	at javax.faces.webapp.UIComponentClassicTagBase.doStartTag(UIComponentClassicTagBase.java:1033)
	at org.apache.jsp.Views.News_jsp._jspx_meth_p_005fdataTable_005f0(News_jsp.java:210)
	at org.apache.jsp.Views.News_jsp._jspx_meth_h_005fform_005f0(News_jsp.java:170)
	at org.apache.jsp.Views.News_jsp._jspx_meth_f_005fview_005f0(News_jsp.java:125)
	at org.apache.jsp.Views.News_jsp._jspService(News_jsp.java:88)
	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388)
	... 28 more
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'NewsBean': Invocation of init method failed; nested exception is java.lang.NullPointerException
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:147)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:350)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1329)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:471)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
	at org.springframework.beans.factory.support.AbstractBeanFactory$2.getObject(AbstractBeanFactory.java:302)
	at org.springframework.web.context.request.AbstractRequestAttributesScope.get(AbstractRequestAttributesScope.java:43)
	at org.springframework.web.context.request.SessionScope.get(SessionScope.java:90)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:298)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
	at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:881)
	at org.springframework.beans.factory.access.el.SpringBeanELResolver.getValue(SpringBeanELResolver.java:58)
	at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:54)
	at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:58)
	at org.apache.el.parser.AstIdentifier.getValue(AstIdentifier.java:69)
	at org.apache.el.parser.AstValue.getValue(AstValue.java:112)
	at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
	at org.apache.jasper.el.JspValueExpression.getValue(JspValueExpression.java:101)
	at com.sun.faces.application.ApplicationImpl.createComponent(ApplicationImpl.java:198)
	... 39 more
Caused by: java.lang.NullPointerException
	at ma.it.bean.NewsBean.init(NewsBean.java:25)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:297)
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:250)
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:144)
	... 60 more
9 mai 2012 16:17:00 org.apache.catalina.core.StandardWrapperValve invoke
GRAVE: "Servlet.service()" pour la servlet Faces Servlet a généré une exception
java.lang.NullPointerException
	at ma.it.bean.NewsBean.init(NewsBean.java:25)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:297)
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:250)
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:144)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:350)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1329)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:471)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
	at org.springframework.beans.factory.support.AbstractBeanFactory$2.getObject(AbstractBeanFactory.java:302)
	at org.springframework.web.context.request.AbstractRequestAttributesScope.get(AbstractRequestAttributesScope.java:43)
	at org.springframework.web.context.request.SessionScope.get(SessionScope.java:90)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:298)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
	at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:881)
	at org.springframework.beans.factory.access.el.SpringBeanELResolver.getValue(SpringBeanELResolver.java:58)
	at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:54)
	at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:58)
	at org.apache.el.parser.AstIdentifier.getValue(AstIdentifier.java:69)
	at org.apache.el.parser.AstValue.getValue(AstValue.java:112)
	at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
	at org.apache.jasper.el.JspValueExpression.getValue(JspValueExpression.java:101)
	at com.sun.faces.application.ApplicationImpl.createComponent(ApplicationImpl.java:198)
	at javax.faces.webapp.UIComponentELTag.createComponent(UIComponentELTag.java:215)
	at javax.faces.webapp.UIComponentClassicTagBase.createChild(UIComponentClassicTagBase.java:454)
	at javax.faces.webapp.UIComponentClassicTagBase.findComponent(UIComponentClassicTagBase.java:635)
	at javax.faces.webapp.UIComponentClassicTagBase.doStartTag(UIComponentClassicTagBase.java:1033)
	at org.apache.jsp.Views.News_jsp._jspx_meth_p_005fdataTable_005f0(News_jsp.java:210)
	at org.apache.jsp.Views.News_jsp._jspx_meth_h_005fform_005f0(News_jsp.java:170)
	at org.apache.jsp.Views.News_jsp._jspx_meth_f_005fview_005f0(News_jsp.java:125)
	at org.apache.jsp.Views.News_jsp._jspService(News_jsp.java:88)
	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388)
	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
	at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
	at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
	at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
	at com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:414)
	at com.sun.faces.application.ViewHandlerImpl.executePageToBuildView(ViewHandlerImpl.java:455)
	at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:139)
	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:108)
	at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:266)
	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:159)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
	at java.lang.Thread.run(Unknown Source)


Voici le code de ma classe News.java :

package ma.it.bean;
 
import java.io.*;
import java.util.List;
 
import javax.annotation.PostConstruct;
 
import ma.it.service.NewsService;
import ma.it.model.News;
 
import org.primefaces.component.datatable.DataTable;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;
 
 
@Component("NewsBean")
@Scope("session")
public class NewsBean implements Serializable{
	private transient NewsService newsService;
	private transient DataTable NewsTable;
	private List<News> NewsList;
 
	@PostConstruct
	public void init() {
		this.NewsList=this.newsService.findAll();
	}
	public DataTable getNewsTable() {
		return NewsTable;
	}
 
	public void setNewsTable(DataTable newsTable) {
		this.NewsTable = newsTable;
	}
	public List<News> getNewsList() {
		return NewsList;
	}
	public void setNewsList(List<News> newsList) {
		this.NewsList = newsList;
	}
 
	}

voici le code de la page News.jsp :
<%@ page contentType="text/html" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://primefaces.prime.com.tr/ui" prefix="p"%>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
	<f:view>
		<h:form prependId="false">
			<p:dataTable id="basic" var="News" binding="#{NewsBean.newsTable}"
				value="#{NewsBean.newsList}">
				<p:column id="modelHeader">
					<f:facet name="idNews">  
                    idNews 
            </f:facet>
					<h:outputText value="#{News.idNews}" />
				</p:column>
 
				<p:column>
					<f:facet name="titre">  
                    Titre  
            </f:facet>
					<h:outputText value="#{News.titre}" />
				</p:column>
 
			</p:dataTable>
		</h:form>
 
	</f:view>
</body>
</html>

Et finalement, voici le code de la classe NewsService :
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
package ma.it.service;
 
import java.util.List;
 
import org.hibernate.SessionFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
 
import ma.it.model.News;
 
@Service("NewsService")
@Transactional
public class NewsService {
 
	@Autowired
	private SessionFactory sessionFactory;
 
	@SuppressWarnings("unchecked")
	public List<News> findAll()// throws Exception
	{
		return sessionFactory.getCurrentSession().createQuery("from  ma.it.model.News").list();
	}
 
	public News findById(Integer id)
	{
		return (News) sessionFactory.getCurrentSession().get(News.class,id);
	}
 
	public void save(News n)
	{
		sessionFactory.getCurrentSession().saveOrUpdate(n);
	}
 
 
}


Est ce que vous avez une idée à me proposer pour résoudre ce problème ?
N.B: c'est ma première application avec Hibernate Spring et JSF et pour la réaliser je me suis basée sur le tutoriel suivant : http://vimeo.com/15705668
A voir également:

3 réponses

Merci de votre réponse , j'ai essayé votre code mais ça n'a pas marché ,

juste pour information , concernant la fonction findAll() je l'avais déjà tester avec JUnit et elle retourne des informations de la base ded données et elle l'affiche
1
KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015
14 mai 2012 à 10:16
ça n'a pas marché, mais est-ce que l'erreur est la même ?
0
KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015
14 mai 2012 à 09:21
Il va falloir apprendre à lire un message d'exception, et en particulier à trier l'information utile de tout ce qui est superflu, voici en gros les seules lignes utiles :

GRAVE: "Servlet.service()" pour la servlet jsp a lancé une exception
java.lang.NullPointerException
	at ma.it.bean.NewsBean.init(NewsBean.java:25)

9 mai 2012 16:17:00 com.sun.faces.lifecycle.LifecycleImpl phase
ATTENTION: executePhase(RENDER_RESPONSE 6,com.sun.faces.context.FacesContextImpl@1bef4c6) threw exception
javax.faces.FacesException: org.apache.jasper.JasperException: An exception occurred processing JSP page /Views/News.jsp at line 15
Caused by: org.apache.jasper.JasperException: An exception occurred processing JSP page /Views/News.jsp at line 15
 
12: <body>
13: 	<f:view>
14: 		<h:form prependId="false">
15: 			<p:dataTable id="basic" var="News" binding="#{NewsBean.newsTable}"
16: 				value="#{NewsBean.newsList}">
17: 				<p:column id="modelHeader">
18: 					<f:facet name="idNews">  

Caused by: javax.faces.FacesException: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'NewsBean': Invocation of init method failed; nested exception is java.lang.NullPointerException
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'NewsBean': Invocation of init method failed; nested exception is java.lang.NullPointerException
Caused by: java.lang.NullPointerException
	at ma.it.bean.NewsBean.init(NewsBean.java:25)

9 mai 2012 16:17:00 org.apache.catalina.core.StandardWrapperValve invoke
GRAVE: "Servlet.service()" pour la servlet Faces Servlet a généré une exception
java.lang.NullPointerException
	at ma.it.bean.NewsBean.init(NewsBean.java:25)

La ligne 25 étant ici :

public void init() {
	this.NewsList=this.newsService.findAll();
}

Pour avoir un NullPointerException soit this vaut null (normalement ce n'est jamais le cas), soit c'est donc this.newsService qui vaut null !

Je te propose ce code en remplacement :

public void init() 
{
    if (newsService==null)
        NewsList = new ListNews();
    else
        NewsList = newsService.findAll();
}

Si ça ne résout pas ton problème tu devrais à mon avis vérifier ta méthode findAll...
0
svp MyInfo comment t a fait pour recupérer les informations concernant la fonction findall() (t a pa trouvé une erreur de ce genre "java.lang.NullPointerException" with Junit
-2