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

Spring Java Discussion :

Caused by: java.lang.NullPointerException


Sujet :

Spring Java

  1. #1
    Membre régulier
    Inscrit en
    Mai 2003
    Messages
    350
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 350
    Points : 84
    Points
    84
    Par défaut Caused by: java.lang.NullPointerException
    Bonjour,
    Je commences d'abord par m'excuser de sembler revenir sur les mêmes choses mais c'est comme ça quand on ne maitrise pas bien quelque chose, une fois que la config change un peu on ne se retrouve pas.
    mon souci
    j'ai une classe test

    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
    @RunWith(SpringJUnit4ClassRunner.class)
    @ContextConfiguration(locations="classpath:laplace-servlet.xml")
    public class SpringAgentServiceTest {
     
    	@Autowired
        private CutAgentService agentService;
     
    	@Autowired
        private CutPosteService posteService;
     
        @Test
        public void testGetUserById() {
        	CutAgent agent = agentService.getAgentById("323465X");
        	Assert.assertNotNull(agent);
        	System.out.println(agent);
        }
     
        @Test
        public void testUpdateUser() {
        	long timestamp = System.currentTimeMillis();
        	CutAgent agent = agentService.getAgentById("323465X");
        	agent.setAGT_NOM("Coulibaly");
        	agent.setAGT_PRENOM("Yaya");
        	agentService.updateAgent(agent);
        	CutAgent updatedUser = agentService.getAgentById("323465X");
        	Assert.assertEquals(agent.getAGT_NOM(), updatedUser.getAGT_NOM());
        	Assert.assertEquals(agent.getAGT_PRENOM(), updatedUser.getAGT_PRENOM());
        }
     
        @Test
        public void testlistPoste() {
        	long timestamp = System.currentTimeMillis();
        	List<CutPoste> items = posteService.list();
        	for (CutPoste item : items) {
        		System.out.println(item.toString());
        	}
     
        }
        //For Example: If we want to get count of how many records got updated by an Update query we can use SqlSession as follows:
        //int updatedRowCount = sqlSession.update("com.sivalabs.mybatisdemo.mappers.UserMapper.updateUser", agent);
     
    }
    qui s’exécute sans soucis
    Nom : test.png
Affichages : 2048
Taille : 176,1 Ko
    Quand je le fais dans un javabean là il y a problème

    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
    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
    	   xmlns:mvc="http://www.springframework.org/schema/mvc" 
    	   xmlns:context="http://www.springframework.org/schema/context"
    	   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	   xsi:schemaLocation="
            http://www.springframework.org/schema/beans     
            http://www.springframework.org/schema/beans/spring-beans.xsd
            http://www.springframework.org/schema/mvc 
            http://www.springframework.org/schema/mvc/spring-mvc.xsd
            http://www.springframework.org/schema/context 
            http://www.springframework.org/schema/context/spring-context.xsd">
     
        <!-- <import resource="classpath:/META-INFSyGACUTDB/jdbc-context.xml"/> -->
        <mvc:default-servlet-handler/>
    	<mvc:annotation-driven/>
    	<!-- <context:component-scan base-package="org.laplace" /> -->		
     
    	<import resource="classpath:jdbc-context.xml" />
     
    	<!--  
    	<context:component-scan base-package="org.laplace.service" />
    	<context:component-scan base-package="org.laplace.controller" />
    	<context:component-scan base-package="org.laplace.validator" />
        -->  
     
    	<!-- Application Message Bundle -->
    	<bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
    		<!-- <property name="basename" value="/WEB-INF/resources/messages.properties" /> -->
    		<property name="basename" value="/resources/messages.properties" />
    		<property name="cacheSeconds" value="3000" />
    	</bean>	
     
    	<!-- Resolves view names to protected .jsp resources within the /WEB-INF/views directory -->
    	<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    		<property name="prefix" value="/pages/"/>
    		<property name="suffix" value=".xhtml"/>
    	</bean>
    </beans>
    ou
    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
    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
    	   xmlns:mvc="http://www.springframework.org/schema/mvc" 
    	   xmlns:context="http://www.springframework.org/schema/context"
    	   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	   xsi:schemaLocation="
            http://www.springframework.org/schema/beans     
            http://www.springframework.org/schema/beans/spring-beans.xsd
            http://www.springframework.org/schema/mvc 
            http://www.springframework.org/schema/mvc/spring-mvc.xsd
            http://www.springframework.org/schema/context 
            http://www.springframework.org/schema/context/spring-context.xsd">
     
        <!-- <import resource="classpath:/META-INFSyGACUTDB/jdbc-context.xml"/> -->
        <mvc:default-servlet-handler/>
    	<mvc:annotation-driven/>
    	<!-- <context:component-scan base-package="org.laplace" /> -->		
     
    	<import resource="classpath:jdbc-context.xml" />
     
    	<!--  
    	<context:component-scan base-package="org.laplace.service" />
    	<context:component-scan base-package="org.laplace.controller" />
    	<context:component-scan base-package="org.laplace.validator" />
        -->  
     
    	<!-- Application Message Bundle -->
    	<bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
    		<!-- <property name="basename" value="/WEB-INF/resources/messages.properties" /> -->
    		<property name="basename" value="/resources/messages.properties" />
    		<property name="cacheSeconds" value="3000" />
    	</bean>	
     
    	<!-- Resolves view names to protected .jsp resources within the /WEB-INF/views directory -->
    	<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    		<property name="prefix" value="/pages/"/>
    		<property name="suffix" value=".xhtml"/>
    	</bean>
     
        <mvc:resources mapping="/resources/**" location="/resources/" cache-period="31556926"/>
    </beans>
    methode 1
    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
    import java.io.Serializable;
    import java.util.List;
     
    import javax.faces.application.FacesMessage;
    import javax.faces.bean.ManagedBean;
    import javax.faces.bean.ViewScoped;
    import javax.faces.context.FacesContext;
     
    import org.apache.taglibs.standard.lang.jstl.ELException;
    import org.laplace.model.CutPoste;
    import org.laplace.service.CutPosteService;
    //import org.laplace.validator.PosteValidator;
    import org.primefaces.event.SelectEvent;
    import org.primefaces.event.UnselectEvent;
    import org.springframework.test.context.ContextConfiguration;
     
    @ManagedBean(name = "poste")
    @ViewScoped
    public class PosteBean implements Serializable{
     
    	private CutPosteService itemService = new CutPosteService();
    	private CutPoste selectedItem = new CutPoste(); 
    	private List<CutPoste> items;
     
    	private Object bean;
    	private String property;
     
    	public CutPosteService getItemService() {
    		return itemService;
    	}
     
    	public void setItemService(CutPosteService itemService) {
    		this.itemService = itemService;
    	}
     
    	public CutPoste getSelectedItem() {
    		return selectedItem;
    	}
     
    	public void setSelectedItem(CutPoste selectedItem) {
    		this.selectedItem = selectedItem;
    	}
     
    	public void editAction(CutPoste item) {
    		selectedItem = item;
    	}
     
    	public List<CutPoste> getItems() {
     
    		items = itemService.list();		
     
    		if (items == null ) {
    			System.out.println("items null");
    		}
    		else {
        	   for (CutPoste item : items) {
        		   System.out.println(item.toString());
        	   }
    		}
     
    		return items;
    	}
     
    	public void setItems(List<CutPoste> items) {
    		this.items = items;
    	}
     
    	public void onRowSelect(SelectEvent event) { // ajout
            System.out.println("Row selected Method");//FacesContext.getCurrentInstance().getExternalContext().redirect("page.xhtml?id=" +pat.getId());
            FacesMessage msg = new FacesMessage("Item Selected", ((CutPoste) event.getObject()).getPC_CODE());
            FacesContext.getCurrentInstance().addMessage(null, msg);
        }
     
    	public void onRowUnselect(UnselectEvent event) {
    	    FacesMessage msg = new FacesMessage("Item Unselected", ((CutPoste) event.getObject()).getPC_CODE());
    	    FacesContext.getCurrentInstance().addMessage(null, msg);
    	}
     
     
    }
    methode 2
    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
    import java.io.Serializable;
    import java.util.List;
    
    import javax.faces.application.FacesMessage;
    import javax.faces.bean.ManagedBean;
    import javax.faces.bean.ViewScoped;
    import javax.faces.context.FacesContext;
    
    import org.apache.taglibs.standard.lang.jstl.ELException;
    import org.laplace.model.CutPoste;
    import org.laplace.service.CutPosteService;
    //import org.laplace.validator.PosteValidator;
    import org.primefaces.event.SelectEvent;
    import org.primefaces.event.UnselectEvent;
    import org.springframework.test.context.ContextConfiguration;
    
    @ManagedBean(name = "poste")
    @ViewScoped
    @ContextConfiguration(locations="classpath:laplace-servlet.xml")
    public class PosteBean implements Serializable{
    	
    	private CutPosteService itemService = new CutPosteService();
    	private CutPoste selectedItem = new CutPoste(); 
    	private List<CutPoste> items;
    	
    	private Object bean;
    	private String property;
        
    	public CutPosteService getItemService() {
    		return itemService;
    	}
    
    	public void setItemService(CutPosteService itemService) {
    		this.itemService = itemService;
    	}
    
    	public CutPoste getSelectedItem() {
    		return selectedItem;
    	}
    
    	public void setSelectedItem(CutPoste selectedItem) {
    		this.selectedItem = selectedItem;
    	}
    	
    	public void editAction(CutPoste item) {
    		selectedItem = item;
    	}
    	
    	public List<CutPoste> getItems() {
    		
    		items = itemService.list();		
    		
    		if (items == null ) {
    			System.out.println("items null");
    		}
    		else {
        	   for (CutPoste item : items) {
        		   System.out.println(item.toString());
        	   }
    		}
        	
    		return items;
    	}
    
    	public void setItems(List<CutPoste> items) {
    		this.items = items;
    	}
    
    	public void onRowSelect(SelectEvent event) { // ajout
            System.out.println("Row selected Method");//FacesContext.getCurrentInstance().getExternalContext().redirect("page.xhtml?id=" +pat.getId());
            FacesMessage msg = new FacesMessage("Item Selected", ((CutPoste) event.getObject()).getPC_CODE());
            FacesContext.getCurrentInstance().addMessage(null, msg);
        }
    	 
    	public void onRowUnselect(UnselectEvent event) {
    	    FacesMessage msg = new FacesMessage("Item Unselected", ((CutPoste) event.getObject()).getPC_CODE());
    	    FacesContext.getCurrentInstance().addMessage(null, msg);
    	}
    	 
    
    }
    et dans les deux cas j'ai la même erreur
    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
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    nov. 25, 2016 7:54:31 AM com.sun.faces.application.view.FaceletViewHandlingStrategy handleRenderException
    GRAVE: Error Rendering View[/pages/poste.xhtml]
    javax.el.ELException: /pages/poste.xhtml @25,66 value="#{poste.items}": Error reading 'items' on type org.laplace.controller.PosteBean
    	at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:114)
    	at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:194)
    	at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:182)
    	at javax.faces.component.UIData.getValue(UIData.java:732)
    	at org.primefaces.component.api.UIData.getDataModel(UIData.java:764)
    	at javax.faces.component.UIData.getRowCount(UIData.java:356)
    	at org.primefaces.component.api.UIData.calculateFirst(UIData.java:215)
    	at org.primefaces.component.datatable.DataTableRenderer.preRender(DataTableRenderer.java:117)
    	at org.primefaces.component.datatable.DataTableRenderer.encodeEnd(DataTableRenderer.java:85)
    	at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1903)
    	at javax.faces.render.Renderer.encodeChildren(Renderer.java:176)
    	at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:889)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1896)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
    	at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:451)
    	at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
    	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
    	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
    	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
    	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
    	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
    	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:528)
    	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1100)
    	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:687)
    	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1520)
    	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1476)
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    	at java.lang.Thread.run(Thread.java:745)
    Caused by: javax.el.ELException: Error reading 'items' on type org.laplace.controller.PosteBean
    	at javax.el.BeanELResolver.getValue(BeanELResolver.java:101)
    	at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
    	at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
    	at org.apache.el.parser.AstValue.getValue(AstValue.java:169)
    	at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:184)
    	at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109)
    	... 42 more
    Caused by: java.lang.NullPointerException
    	at org.laplace.service.CutPosteService.list(CutPosteService.java:51)
    	at org.laplace.controller.PosteBean.getItems(PosteBean.java:53)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:498)
    	at javax.el.BeanELResolver.getValue(BeanELResolver.java:97)
    	... 47 more
     
    nov. 25, 2016 7:54:31 AM com.sun.faces.context.ExceptionHandlerImpl throwIt
    INFOS: Exception when handling error trying to reset the response.
    java.lang.NullPointerException
    	at org.laplace.service.CutPosteService.list(CutPosteService.java:51)
    	at org.laplace.controller.PosteBean.getItems(PosteBean.java:53)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:498)
    	at javax.el.BeanELResolver.getValue(BeanELResolver.java:97)
    	at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
    	at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
    	at org.apache.el.parser.AstValue.getValue(AstValue.java:169)
    	at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:184)
    	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.UIData.getValue(UIData.java:732)
    	at org.primefaces.component.api.UIData.getDataModel(UIData.java:764)
    	at javax.faces.component.UIData.getRowCount(UIData.java:356)
    	at org.primefaces.component.api.UIData.calculateFirst(UIData.java:215)
    	at org.primefaces.component.datatable.DataTableRenderer.preRender(DataTableRenderer.java:117)
    	at org.primefaces.component.datatable.DataTableRenderer.encodeEnd(DataTableRenderer.java:85)
    	at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1903)
    	at javax.faces.render.Renderer.encodeChildren(Renderer.java:176)
    	at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:889)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1896)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
    	at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:451)
    	at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
    	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
    	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
    	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
    	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
    	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
    	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:528)
    	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1100)
    	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:687)
    	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1520)
    	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1476)
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    	at java.lang.Thread.run(Thread.java:745)
     
    nov. 25, 2016 7:54:31 AM com.sun.faces.renderkit.RenderKitUtils renderHtmlErrorPage
    AVERTISSEMENT: JSF1087 : Impossible de générer une page d’erreur Facelets car la réponse a déjà été validée.
    nov. 25, 2016 7:54:31 AM com.sun.faces.renderkit.RenderKitUtils renderHtmlErrorPage
    GRAVE: javax.faces.FacesException
    javax.faces.FacesException
    	at com.sun.faces.context.ExceptionHandlerImpl.handle(ExceptionHandlerImpl.java:141)
    	at javax.faces.context.ExceptionHandlerWrapper.handle(ExceptionHandlerWrapper.java:100)
    	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:119)
    	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
    	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
    	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
    	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:528)
    	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1100)
    	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:687)
    	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1520)
    	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1476)
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    	at java.lang.Thread.run(Thread.java:745)
    Caused by: java.lang.NullPointerException
    	at org.laplace.service.CutPosteService.list(CutPosteService.java:51)
    	at org.laplace.controller.PosteBean.getItems(PosteBean.java:53)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:498)
    	at javax.el.BeanELResolver.getValue(BeanELResolver.java:97)
    	at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
    	at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
    	at org.apache.el.parser.AstValue.getValue(AstValue.java:169)
    	at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:184)
    	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.UIData.getValue(UIData.java:732)
    	at org.primefaces.component.api.UIData.getDataModel(UIData.java:764)
    	at javax.faces.component.UIData.getRowCount(UIData.java:356)
    	at org.primefaces.component.api.UIData.calculateFirst(UIData.java:215)
    	at org.primefaces.component.datatable.DataTableRenderer.preRender(DataTableRenderer.java:117)
    	at org.primefaces.component.datatable.DataTableRenderer.encodeEnd(DataTableRenderer.java:85)
    	at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1903)
    	at javax.faces.render.Renderer.encodeChildren(Renderer.java:176)
    	at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:889)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1896)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
    	at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:451)
    	at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
    	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
    	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
    	... 23 more
     
    nov. 25, 2016 7:54:31 AM com.sun.faces.context.ExceptionHandlerImpl log
    1100: JSF1073 : javax.el.ELException intercepté durant le traitement de RENDER_RESPONSE 6 : UIComponent-ClientId=, Message=/pages/poste.xhtml @25,66 value="#{poste.items}": Error reading 'items' on type org.laplace.controller.PosteBean
    nov. 25, 2016 7:54:31 AM com.sun.faces.context.ExceptionHandlerImpl log
    1100: /pages/poste.xhtml @25,66 value="#{poste.items}": Error reading 'items' on type org.laplace.controller.PosteBean
    javax.el.ELException: /pages/poste.xhtml @25,66 value="#{poste.items}": Error reading 'items' on type org.laplace.controller.PosteBean
    	at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:114)
    	at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:194)
    	at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:182)
    	at javax.faces.component.UIData.getValue(UIData.java:732)
    	at org.primefaces.component.api.UIData.getDataModel(UIData.java:764)
    	at javax.faces.component.UIData.getRowCount(UIData.java:356)
    	at org.primefaces.component.api.UIData.calculateFirst(UIData.java:215)
    	at org.primefaces.component.datatable.DataTableRenderer.preRender(DataTableRenderer.java:117)
    	at org.primefaces.component.datatable.DataTableRenderer.encodeEnd(DataTableRenderer.java:85)
    	at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1903)
    	at javax.faces.render.Renderer.encodeChildren(Renderer.java:176)
    	at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:889)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1896)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
    	at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:451)
    	at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
    	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
    	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
    	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
    	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
    	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
    	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:528)
    	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1100)
    	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:687)
    	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1520)
    	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1476)
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    	at java.lang.Thread.run(Thread.java:745)
    Caused by: javax.el.ELException: Error reading 'items' on type org.laplace.controller.PosteBean
    	at javax.el.BeanELResolver.getValue(BeanELResolver.java:101)
    	at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
    	at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
    	at org.apache.el.parser.AstValue.getValue(AstValue.java:169)
    	at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:184)
    	at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109)
    	... 42 more
    Caused by: java.lang.NullPointerException
    	at org.laplace.service.CutPosteService.list(CutPosteService.java:51)
    	at org.laplace.controller.PosteBean.getItems(PosteBean.java:53)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:498)
    	at javax.el.BeanELResolver.getValue(BeanELResolver.java:97)
    	... 47 more

  2. #2
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    private CutPosteService itemService = new CutPosteService();
    Tu l'instancie manuellement donc les dépendances dans cette classe ne seront pas injectées, donc null, d'où le NullPointerException. Contrairement à ce que tu as dans le test, tu l'injectes avec @Autowired, donc ses dépendances seront injectées par spring et ça passe.

    A+.

  3. #3
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Pas le temps de lire en détail tous ces codes mais tu ne dois pas utiliser @ContextConfiguration(locations="classpath:laplace-servlet.xml") dans PosteBean. Tu as commentés pas mal de lignes dans les xml, édite ton message en ajoutant le langage dans la balise code. [code=xml], ... Vérifie que tes packages sont bien scannées.

  4. #4
    Membre régulier
    Inscrit en
    Mai 2003
    Messages
    350
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 350
    Points : 84
    Points
    84
    Par défaut
    alors où mettre le car j'ai le même erreur avec ce code ci dessous

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    @ManagedBean(name = "poste")
    @ViewScoped
    public class PosteBean implements Serializable {
     
    	@Autowired
    	private CutPosteService itemService = new CutPosteService();

  5. #5
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Citation Envoyé par yLaplace Voir le message
    alors où mettre le car j'ai le même erreur avec ce code ci dessous[/CODE]
    T'as toujours un NullPointerException mais je ne pas que c'est le même, c'est itemService qui doit être null, vu que tu as commenté tous les component-scan. Tu utilises aussi spring-mvc? Peut-on voir ton web.xml?

  6. #6
    Membre régulier
    Inscrit en
    Mai 2003
    Messages
    350
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 350
    Points : 84
    Points
    84
    Par défaut
    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
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
      <display-name>SyGACUTPosteComptable</display-name>
     
      <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/laplace-servlet.xml</param-value>
      </context-param>
     
      <context-param>
        <param-name>javax.faces.PROJECT_STAGE</param-name>
        <param-value>Development</param-value>
      </context-param>
     
      <context-param>
        <param-name>primefaces.THEME</param-name>
        <param-value>bluesky</param-value>
      </context-param>
     
      <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
      </listener>
     
      <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
        <welcome-file>index.xhtml</welcome-file>
      </welcome-file-list>
     
      <servlet>
        <servlet-name>laplace</servlet-name>
        <servlet-class> org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
          <param-name>contextConfigLocation</param-name>
          <param-value>/WEB-INF/laplace-servlet.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
      </servlet>
     
      <!-- JSF mapping -->
      <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>laplace</servlet-name>
        <url-pattern>/</url-pattern>
      </servlet-mapping>
     
      <!-- Map these files with JSF -->
     
      <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>/faces/*</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.jsf</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.faces</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.xhtml</url-pattern>
      </servlet-mapping>
      
    </web-app>
    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
    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
    	   xmlns:mvc="http://www.springframework.org/schema/mvc" 
    	   xmlns:context="http://www.springframework.org/schema/context"
    	   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	   xsi:schemaLocation="
            http://www.springframework.org/schema/beans     
            http://www.springframework.org/schema/beans/spring-beans.xsd
            http://www.springframework.org/schema/mvc 
            http://www.springframework.org/schema/mvc/spring-mvc.xsd
            http://www.springframework.org/schema/context 
            http://www.springframework.org/schema/context/spring-context.xsd">
     
        <!-- <import resource="classpath:/META-INFSyGACUTDB/jdbc-context.xml"/> -->
        <mvc:default-servlet-handler/>
    	<mvc:annotation-driven/>
    	<!-- <context:component-scan base-package="org.laplace" /> -->		
     
    	<import resource="classpath:jdbc-context.xml" />
     
    	<!-- Application Message Bundle -->
    	<bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
    		<!-- <property name="basename" value="/WEB-INF/resources/messages.properties" /> -->
    		<property name="basename" value="/resources/messages.properties" />
    		<property name="cacheSeconds" value="3000" />
    	</bean>	
     
    	<!-- Resolves view names to protected .jsp resources within the /WEB-INF/views directory -->
    	<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    		<property name="prefix" value="/pages/"/>
    		<property name="suffix" value=".xhtml"/>
    	</bean>
     
    	<mvc:resources mapping="/resources/**" location="/resources/" cache-period="31556926"/>
    </beans>

  7. #7
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Citation Envoyé par andry.aime Voir le message
    c'est itemService qui doit être null, vu que tu as commenté tous les component-scan

  8. #8
    Membre régulier
    Inscrit en
    Mai 2003
    Messages
    350
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 350
    Points : 84
    Points
    84
    Par défaut
    j'ai un doute mais je pense que le souci vien de ces lignes
    laplace-servlet.xml

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <import resource="classpath:jdbc-context.xml" />
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <mvc:resources mapping="/resources/**" location="/resources/" cache-period="31556926"/>

    étant donné que les resources ont été redirigé vers webapp/resources alors que la 1 ere ligne import le fichier jdbc-context d'un autre projet donc il doit se retrouver dans les resources. Mais dans lequel?
    celui de l'appli par defaut src/java/resources ou celui du webapp/resources?
    Je penses que le fichier doit se trouver dans le 1 er enfin je pense et comme il y a une redirection des resources alors il le cherche peut être dans le second.
    Si c'est le cas comment resoudre cela?

  9. #9
    Membre régulier
    Inscrit en
    Mai 2003
    Messages
    350
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 350
    Points : 84
    Points
    84
    Par défaut
    même quand je active cette ligne commentée c'est pareil. au fait le fichier jdbc-context.xml contient deja
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <context:component-scan base-package="org.laplace" />
    c'est pourquoi c'est commenté dans le fichier laplace-servlet.xml

  10. #10
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Peut-on voir tes codes actuels (xml, java) et citant les log d'erreurs en entier.

    A+.

  11. #11
    Membre régulier
    Inscrit en
    Mai 2003
    Messages
    350
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 350
    Points : 84
    Points
    84
    Par défaut
    ok le module qui gère la base de donnée contient les fichiers suivants:
    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
    package org.laplace.model;
     
    public class CutPoste {
        private String PC_CODE;
     
        private String PC_LIBC;
     
        private String PC_LIBL;
     
        private String PC_PC_CODE;
     
        private String PC_TYPE;
     
        private String PC_GP;
     
        private String PC_COMPTE;
     
        public String getPC_CODE() {
            return PC_CODE;
        }
     
        public void setPC_CODE(String PC_CODE) {
            this.PC_CODE = PC_CODE == null ? null : PC_CODE.trim();
        }
     
        public String getPC_LIBC() {
            return PC_LIBC;
        }
     
        public void setPC_LIBC(String PC_LIBC) {
            this.PC_LIBC = PC_LIBC == null ? null : PC_LIBC.trim();
        }
     
        public String getPC_LIBL() {
            return PC_LIBL;
        }
     
        public void setPC_LIBL(String PC_LIBL) {
            this.PC_LIBL = PC_LIBL == null ? null : PC_LIBL.trim();
        }
     
        public String getPC_PC_CODE() {
            return PC_PC_CODE;
        }
     
        public void setPC_PC_CODE(String PC_PC_CODE) {
            this.PC_PC_CODE = PC_PC_CODE == null ? null : PC_PC_CODE.trim();
        }
     
        public String getPC_TYPE() {
            return PC_TYPE;
        }
     
        public void setPC_TYPE(String PC_TYPE) {
            this.PC_TYPE = PC_TYPE == null ? null : PC_TYPE.trim();
        }
     
        public String getPC_GP() {
            return PC_GP;
        }
     
        public void setPC_GP(String PC_GP) {
            this.PC_GP = PC_GP == null ? null : PC_GP.trim();
        }
     
        public String getPC_COMPTE() {
            return PC_COMPTE;
        }
     
        public void setPC_COMPTE(String PC_COMPTE) {
            this.PC_COMPTE = PC_COMPTE == null ? null : PC_COMPTE.trim();
        }
     
        @Override
        public String toString() {
         return "Poste [ Code=" + PC_CODE + ", Libellé=" + PC_LIBC + ']';
        }
    }
    jdbc-context.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
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
           xmlns:p="http://www.springframework.org/schema/p"
           xmlns:tx="http://www.springframework.org/schema/tx" 
           xmlns:aop="http://www.springframework.org/schema/aop"
           xmlns:mvc="http://www.springframework.org/schema/mvc"
           xmlns:context="http://www.springframework.org/schema/context"
           xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
           http://www.springframework.org/schema/aop
           http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
           http://www.springframework.org/schema/mvc 
           http://www.springframework.org/schema/mvc/spring-mvc.xsd
           http://www.springframework.org/schema/tx
           http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
           http://www.springframework.org/schema/context
           http://www.springframework.org/schema/context/spring-context-3.0.xsd">  
     
        <context:component-scan base-package="org.laplace" />
        <!-- <context:component-scan base-package="org.laplace.service" /> -->
     
        <!-- <context:property-placeholder location="/WEB-INF/jdbc.properties,/WEB-INF/mybatis/mybatis.properties" />-->
        <context:property-placeholder location="classpath:jdbc.properties,classpath:mybatis.properties" />
     
        <!-- Declare a datasource that has pooling capabilities -->
        <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
          <property name="driverClassName" value="${jdbc.driverClassName}"/>
          <property name="url" value="${jdbc.url}"/>
          <property name="username" value="${jdbc.username}"/>
          <property name="password" value="${jdbc.password}"/>
        </bean>
     
        <!-- define the SqlSessionFactory, notice that configLocation is not needed when you use MapperFactoryBean -->
        <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
            <property name="dataSource" ref="dataSource" />
            <property name="typeAliasesPackage" value="org.laplace.model"/>
            <property name="mapperLocations" value="classpath*:org/laplace/mapper/**/*.xml" />
            <!-- <property name="configLocation" value="WEB-INF/mybatis/sqlmap-config.xml" /> -->
        </bean>
     
        <!-- <bean id="CutAgentService" class="org.laplace.service.CutAgentService"/> -->
     
        <bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate">
            <constructor-arg index="0" ref="sqlSessionFactory" />
        </bean>
     
        <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
            <property name="basePackage" value="org.laplace.mapper" />
        </bean>
     
        <!-- Declare a transaction manager -->
        <tx:annotation-driven transaction-manager="transactionManager"/>
     
        <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
           <property name="dataSource" ref="dataSource" />
        </bean>
     
     
        <!-- scan for mappers and let them be autowired -->
        <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
            <property name="basePackage" value="org.laplace.mapper" />
            <!-- <property name="basePackage" value="${MapperInterfacePackage}" /> -->
        </bean>
     
    </beans>
    jdbc.properties

    ce module est declaré dans le pom.xml du module web

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <dependency> 
           <groupId>${parent.groupId}</groupId>
           <artifactId>SyGACUTDB</artifactId>
           <version>${parent.version}</version>
        </dependency>
    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
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
      <display-name>SyGACUTPosteComptable</display-name>
     
      <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/laplace-servlet.xml</param-value>
      </context-param>
     
      <context-param>
        <param-name>javax.faces.PROJECT_STAGE</param-name>
        <param-value>Development</param-value>
      </context-param>
     
      <context-param>
        <param-name>primefaces.THEME</param-name>
        <param-value>bluesky</param-value>
      </context-param>
     
      <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
      </listener>
     
      <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
        <welcome-file>index.xhtml</welcome-file>
      </welcome-file-list>
     
      <servlet>
        <servlet-name>laplace</servlet-name>
        <servlet-class> org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
          <param-name>contextConfigLocation</param-name>
          <param-value>/WEB-INF/laplace-servlet.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
      </servlet>
     
      <!-- JSF mapping -->
      <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>laplace</servlet-name>
        <url-pattern>/</url-pattern>
      </servlet-mapping>
     
      <!-- Map these files with JSF -->
     
      <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>/faces/*</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.jsf</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.faces</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.xhtml</url-pattern>
      </servlet-mapping>
      
    </web-app>
    laplace-servlet.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
    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
    	   xmlns:mvc="http://www.springframework.org/schema/mvc" 
    	   xmlns:context="http://www.springframework.org/schema/context"
    	   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	   xsi:schemaLocation="
            http://www.springframework.org/schema/beans     
            http://www.springframework.org/schema/beans/spring-beans.xsd
            http://www.springframework.org/schema/mvc 
            http://www.springframework.org/schema/mvc/spring-mvc.xsd
            http://www.springframework.org/schema/context 
            http://www.springframework.org/schema/context/spring-context.xsd">
     
        <!-- <import resource="classpath:/META-INFSyGACUTDB/jdbc-context.xml"/> -->
        <mvc:default-servlet-handler/>
    	<mvc:annotation-driven/>
    	<!-- <context:component-scan base-package="org.laplace" /> -->		
     
    	<import resource="classpath:jdbc-context.xml" />
     
    	<!-- Application Message Bundle -->
    	<bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
    		<!-- <property name="basename" value="/WEB-INF/resources/messages.properties" /> -->
    		<property name="basename" value="/resources/messages.properties" />
    		<property name="cacheSeconds" value="3000" />
    	</bean>	
     
    	<!-- Resolves view names to protected .jsp resources within the /WEB-INF/views directory -->
    	<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    		<property name="prefix" value="/pages/"/>
    		<property name="suffix" value=".xhtml"/>
    	</bean>
     
    	<mvc:resources mapping="/resources/**" location="/resources/" cache-period="31556926"/>
    </beans>
    le laplace-servlet.xml a été dupliqué un dans web-inf (indexé par le fichier web donc utilisé pour les beans) et l'autre dans src/java/resource (utilisé par le test)

    la class du test qui marche donc fait les update, retourne la liste des postes
    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
    package org.laplace.test;
     
    import java.util.List;
     
    import org.junit.Assert;
    import org.junit.Test;
    import org.junit.runner.RunWith;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.test.context.ContextConfiguration;
    import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
     
    import org.laplace.model.CutAgent;
    import org.laplace.service.CutAgentService;
     
    import org.laplace.model.CutPoste;
    import org.laplace.service.CutPosteService;
     
    @RunWith(SpringJUnit4ClassRunner.class)
    @ContextConfiguration(locations="classpath:laplace-servlet.xml")
    public class SpringAgentServiceTest {
     
    	@Autowired
        private CutAgentService agentService;
     
    	@Autowired
        private CutPosteService posteService;
     
        @Test
        public void testGetUserById() {
        	CutAgent agent = agentService.getAgentById("323465X");
        	Assert.assertNotNull(agent);
        	System.out.println(agent);
        }
     
        @Test
        public void testUpdateUser() {
        	long timestamp = System.currentTimeMillis();
        	CutAgent agent = agentService.getAgentById("323465X");
        	agent.setAGT_NOM("Coulibaly");
        	agent.setAGT_PRENOM("Yaya");
        	agentService.updateAgent(agent);
        	CutAgent updatedUser = agentService.getAgentById("323465X");
        	Assert.assertEquals(agent.getAGT_NOM(), updatedUser.getAGT_NOM());
        	Assert.assertEquals(agent.getAGT_PRENOM(), updatedUser.getAGT_PRENOM());
        }
     
        @Test
        public void testlistPoste() {
        	long timestamp = System.currentTimeMillis();
        	List<CutPoste> items = posteService.list();
        	for (CutPoste item : items) {
        		System.out.println(item.toString());
        	}
     
        }
        //For Example: If we want to get count of how many records got updated by an Update query we can use SqlSession as follows:
        //int updatedRowCount = sqlSession.update("com.sivalabs.mybatisdemo.mappers.UserMapper.updateUser", agent);
     
    }
    coté web
    le bean PosteBean sensé retourné la liste des postes
    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
    package org.laplace.controller;
     
    import java.io.Serializable;
    import java.util.List;
     
    import javax.faces.application.FacesMessage;
    import javax.faces.bean.ManagedBean;
    import javax.faces.bean.ViewScoped;
    import javax.faces.context.FacesContext;
     
    import org.apache.taglibs.standard.lang.jstl.ELException;
    import org.laplace.model.CutPoste;
    import org.laplace.service.CutPosteService;
    //import org.laplace.validator.PosteValidator;
    import org.primefaces.event.SelectEvent;
    import org.primefaces.event.UnselectEvent;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.test.context.ContextConfiguration;
     
    @ManagedBean(name = "poste")
    @ViewScoped
    public class PosteBean implements Serializable {
     
    	@Autowired
        private CutPosteService itemService;
     
    	private CutPoste selectedItem = new CutPoste(); 
    	private List<CutPoste> items;
     
    	public CutPosteService getItemService() {
    		return itemService;
    	}
     
    	public void setItemService(CutPosteService itemService) {
    		this.itemService = itemService;
    	}
     
    	public CutPoste getSelectedItem() {
    		return selectedItem;
    	}
     
    	public void setSelectedItem(CutPoste selectedItem) {
    		this.selectedItem = selectedItem;
    	}
     
    	public void editAction(CutPoste item) {
    		selectedItem = item;
    	}
     
    	public List<CutPoste> getItems() {		
    		items = itemService.list();		    	
    		return items;
    	}
     
    	public void setItems(List<CutPoste> items) {
    		this.items = items;
    	}
     
    	public void onRowSelect(SelectEvent event) { // ajout
            System.out.println("Row selected Method");//FacesContext.getCurrentInstance().getExternalContext().redirect("page.xhtml?id=" +pat.getId());
            FacesMessage msg = new FacesMessage("Item Selected", ((CutPoste) event.getObject()).getPC_CODE());
            FacesContext.getCurrentInstance().addMessage(null, msg);
        }
     
    	public void onRowUnselect(UnselectEvent event) {
    	    FacesMessage msg = new FacesMessage("Item Unselected", ((CutPoste) event.getObject()).getPC_CODE());
    	    FacesContext.getCurrentInstance().addMessage(null, msg);
    	}
     
     
    }
    et le fichier xhtml dans le repertoire pages
    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
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
     
    <html xmlns="http://www.w3.org/1999/xhtml"
    	  xmlns:f="http://java.sun.com/jsf/core"
          xmlns:h="http://java.sun.com/jsf/html"
          xmlns:ui="http://java.sun.com/jsf/facelets"
          xmlns:p="http://primefaces.org/ui" 
          >
        <h:body>
        	<ui:composition template="/WEB-INF/Template/Layout.xhtml">
        	    <!-- Redefinition de la zone 'content' du layout  	-->
    		    <ui:define name="content">
    			    <f:view>
    			       <h2>Liste des Postes Comptables</h2> 
     
    				   <h:form id="form"> 
    				      <p:growl id="msg" showDetail="true" sticky="true" />
     
                          <p:dataTable var="item" value="#{poste.items}" 
                                       selectionMode="single" selection="#{poste.selectedItem}" rowKey="#{item.PC_CODE}"  
                                       style="width:100%; font-family:Arial; font-size: 12px;" rows="10"
                                       border="1"  styleClass="mainTable" captionClass="caption2" headerClass="heading" columnClasses="even,odd,even,odd"
                                       paginator="true" paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
                                       rowsPerPageTemplate="5,10,15"> 
     
                             <p:ajax event="rowSelect" listener="#{poste.onRowSelect}" update=":form:ItemDetail" oncomplete="PF('ItemDialog').show()" />
                             <p:ajax event="rowUnselect" listener="#{poste.onRowUnselect}" update=":form:ItemDetail" />
     
                             <p:column headerText="Code" sortBy="#{item.PC_CODE}" filterBy="#{item.PC_CODE}">
                                <h:outputText value="#{item.PC_CODE}" />
                             </p:column>
                             <p:column headerText="Libellé Court" sortBy="#{item.PC_LIBC}" filterBy="#{item.PC_LIBC}">
                                <h:outputText value="#{item.PC_LIBC}" />
                             </p:column>
                             <p:column headerText="Libellé Long" sortBy="#{item.PC_LIBL}" filterBy="#{item.PC_LIBL}">
                                <h:outputText value="#{item.PC_LIBL}" />
                             </p:column>
                             <p:column headerText="Centralisateur" sortBy="#{item.PC_PC_CODE}" filterBy="#{item.PC_PC_CODE}">
                                <h:outputText value="#{item.PC_PC_CODE}" />
                             </p:column>
                             <p:column headerText="Type" sortBy="#{item.PC_TYPE}" filterBy="#{item.PC_TYPE}">
                                <h:outputText value="#{item.PC_TYPE}" />
                             </p:column>
                             <p:column headerText="Groupe" sortBy="#{item.PC_GP}" filterBy="#{item.PC_GP}">
                                <h:outputText value="#{item.PC_GP}" />
                             </p:column>
                          </p:dataTable>
     
                          <p:panel id="JunglePanel" styleClass="styleGreen">
                             <p:commandButton value="Nouveau" onclick="PF('insertDlg').show();" type="button" />
                             <p:commandButton value="Editer" />  
                             <p:commandButton value="Supprimer" onclick="PF('deleteDlg').show();" type="button" />
                             <p:commandButton action="#{checkListController.clear()}" oncomplete="PF('checkDialog').show()" 
    		                                  value="Quitter" resetValues="true" update=":checkDialog" />
                             <p:commandLink  update=":form" title="View Detail" styleClass="ui-icon ui-icon-search" actionListener="#{fournisseurBean.delet(fr.matricule)}">
                                <p:confirm header="Supprime Fournisseur" message="Vous voulez supprimer ?" icon="ui-icon-alert" />
                             </p:commandLink>
                          </p:panel>
                          <!-- <p:commandButton value="Green Button" styleClass="styleGreen" /> -->
     
     
                          <p:dialog header="Saisie ou Modification" widgetVar="insertDlg" modal="true" showEffect="fade" hideEffect="fade" resizable="false">
                             <p:outputPanel id="ItemDetail" style="text-align:center;">
     
                                <h:panelGrid  columns="2" cellpadding="5" rendered="#{not empty poste.selectedItem}" columnClasses="label,value">
     
                                   <h:outputText for="code" value="Code:" />
                                   <!-- <p:inputText id="dlgPcCode" value="#{poste.selectedItem.PC_CODE}" required="true" label="code" /> -->
                                   <p:inputText id="dlgPcCode" value="#{item.PC_CODE}" required="true" label="code" />
     
                                   <h:outputText for="libelle" value="Libellé Court:" />
                                   <!-- <p:inputText id="dlgPcLibelle" value="#{poste.selectedItem.PC_LIBC}" required="true" label="libelle" /> -->
                                   <p:inputText id="dlgPcLibelle" value="#{item.PC_LIBC}" required="true" label="libelle" />
     
                                   <h:outputText for="pcc" value="Centralisateur:" />
                                   <!-- <p:inputText id="dlgPcc" value="#{poste.selectedItem.PC_PC_CODE}" required="true" label="pcc" /> -->
                                   <p:inputText id="dlgPcc" value="#{item.PC_PC_CODE}" required="true" label="pcc" />
     
                                   <h:outputText for="type" value="Type:" />
                                   <p:inputText id="dlgType" value="#{poste.selectedItem.PC_TYPE}" required="true" label="type" />
     
                                   <h:outputText for="groupe" value="Groupe:" />
                                   <p:inputText id="dlgGroupe" value="#{poste.selectedItem.PC_GP}" required="true" label="groupe" />
     
                                   <f:facet name="footer">
                                      <p:commandButton value="Valider" action="/poste/add" oncomplete="handleinsertDlgRequest(xhr, status, args)" />
                                      <p:commandButton value="Quitter"  oncomplete="handleinsertDlgRequest(xhr, status, args)" />
                                   </f:facet>  
                                </h:panelGrid>
     
                             </p:outputPanel>
     
                          </p:dialog>
     
                          <p:confirmDialog widgetVar="deleteDlg" id="deleteDialog" header="Confirmation de Suppression" message="Voulez vous supprimer cet enregistrement?" width="400" closable="false" severity="alert">
                             <h:panelGroup layout="block" style="text-align: right">
                                <p:commandButton value="Yes" immediate="true" action="/poste/delete" oncomplete="deleteDlg.hide();" />
                                <p:commandButton value="No" immediate="true" oncomplete="deleteDlg.hide();" />
                             </h:panelGroup>
                          </p:confirmDialog>   
     
                          <p:dialog header="Dialog" widgetVar="dlg" dynamic="true">
                              <h:outputText value="This content is loaded lazy." />
                          </p:dialog>
     
                          <p:confirmDialog global="true">
                             <p:commandButton value="Oui" type="button" styleClass="ui-confirmdialog-yes" icon="ui-icon-check"/>
                             <p:commandButton value="Non" type="button" styleClass="ui-confirmdialog-no" icon="ui-icon-close"/>
                          </p:confirmDialog>
     
     
     
                          <p:confirmDialog id="confirmDialog"
    		                               message="You have been idle for at least 10 seconds, Please click ok to continue."
    		                               header="Are you there?" severity="alert" widgetVar="idleDialog">
     
    		                  <p:commandButton id="confirm" value="Ok" update="msg"
    			                               oncomplete="idleDialog.hide()"
    			                               actionListener="#{idleBean.welcomeListener}" />
     
    		                  <p:commandButton id="Logout" value="LogMeOut" update="msg"
    			                               oncomplete="idleDialog.hide()"
    			                               actionListener="#{idleBean.logoutListener}" />
     
    	                  </p:confirmDialog>
     
     
    	                    <p:confirmDialog message="Are you sure about destroying the world?"
                                             header="Initiating destroy process" severity="alert" 
                                             widgetVar="cd">
                               <p:commandButton value="Yes Sure" update="msg" oncomplete="confirmation.hide()"/>
                               <p:commandButton value="Not Yet" update="msg" onclick="confirmation.hide();" type="button" /> 
                            </p:confirmDialog>
     
                       </h:form> 
     
                       <p:dialog widgetVar="checkDialog" 
                                 showEffect="fold" 
                                 hideEffect="explode"                             
                                 closeOnEscape="true" 
                                 modal="true" header="check" 
                                 id="checkDialog"
                                 styleClass="customDialog">
                          <h:form id="checkForm">
                             <p:messages />
    	                     <p:focus />
    	                     <p:panelGrid columns="2">
    		                    name:
    		                    <p:inputText value="#{checkListController.check.name}" />
    		                    url:
    		                    <p:inputText value="#{checkListController.check.url}" />
    	                     </p:panelGrid>
    	                     <p:commandButton value="save" action="#{checkListController.save()}" 
    		                               update="checkForm" oncomplete="handleDialogSubmit(args, 'checkDialog')" />
                          </h:form>
                       </p:dialog>
     
     
    			    </f:view>
    			    <script type="text/javascript">
                     function handleinsertDlgRequest(xhr, status, args) {
                         if(args.validationFailed || !args.loggedIn) {
                             PF('insertDlg').jq.effect("shake", {times:5}, 100);
                         }
                         else {
                             PF('insertDlg').hide();
                             $('#loginLink').fadeOut();
                         }
                     }
                </script>     
     
     
    		    </ui:define>
        	</ui:composition>
        </h:body>
    </html>
    la j'ai l'erreur

  12. #12
    Membre régulier
    Inscrit en
    Mai 2003
    Messages
    350
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 350
    Points : 84
    Points
    84
    Par défaut
    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
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    nov. 25, 2016 1:56:34 PM com.sun.faces.application.view.FaceletViewHandlingStrategy handleRenderException
    GRAVE: Error Rendering View[/pages/poste.xhtml]
    javax.el.ELException: /pages/poste.xhtml @25,66 value="#{poste.items}": Error reading 'items' on type org.laplace.controller.PosteBean
    	at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:114)
    	at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:194)
    	at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:182)
    	at javax.faces.component.UIData.getValue(UIData.java:732)
    	at org.primefaces.component.api.UIData.getDataModel(UIData.java:764)
    	at javax.faces.component.UIData.getRowCount(UIData.java:356)
    	at org.primefaces.component.api.UIData.calculateFirst(UIData.java:215)
    	at org.primefaces.component.datatable.DataTableRenderer.preRender(DataTableRenderer.java:117)
    	at org.primefaces.component.datatable.DataTableRenderer.encodeEnd(DataTableRenderer.java:85)
    	at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1903)
    	at javax.faces.render.Renderer.encodeChildren(Renderer.java:176)
    	at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:889)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1896)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
    	at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:451)
    	at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
    	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
    	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
    	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
    	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
    	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
    	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:528)
    	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1100)
    	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:687)
    	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1520)
    	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1476)
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    	at java.lang.Thread.run(Thread.java:745)
    Caused by: javax.el.ELException: Error reading 'items' on type org.laplace.controller.PosteBean
    	at javax.el.BeanELResolver.getValue(BeanELResolver.java:101)
    	at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
    	at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
    	at org.apache.el.parser.AstValue.getValue(AstValue.java:169)
    	at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:184)
    	at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109)
    	... 42 more
    Caused by: java.lang.NullPointerException
    	at org.laplace.controller.PosteBean.getItems(PosteBean.java:51)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:498)
    	at javax.el.BeanELResolver.getValue(BeanELResolver.java:97)
    	... 47 more
     
    nov. 25, 2016 1:56:34 PM com.sun.faces.context.ExceptionHandlerImpl throwIt
    INFOS: Exception when handling error trying to reset the response.
    java.lang.NullPointerException
    	at org.laplace.controller.PosteBean.getItems(PosteBean.java:51)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:498)
    	at javax.el.BeanELResolver.getValue(BeanELResolver.java:97)
    	at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
    	at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
    	at org.apache.el.parser.AstValue.getValue(AstValue.java:169)
    	at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:184)
    	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.UIData.getValue(UIData.java:732)
    	at org.primefaces.component.api.UIData.getDataModel(UIData.java:764)
    	at javax.faces.component.UIData.getRowCount(UIData.java:356)
    	at org.primefaces.component.api.UIData.calculateFirst(UIData.java:215)
    	at org.primefaces.component.datatable.DataTableRenderer.preRender(DataTableRenderer.java:117)
    	at org.primefaces.component.datatable.DataTableRenderer.encodeEnd(DataTableRenderer.java:85)
    	at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1903)
    	at javax.faces.render.Renderer.encodeChildren(Renderer.java:176)
    	at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:889)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1896)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
    	at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:451)
    	at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
    	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
    	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
    	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
    	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
    	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
    	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:528)
    	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1100)
    	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:687)
    	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1520)
    	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1476)
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    	at java.lang.Thread.run(Thread.java:745)
     
    nov. 25, 2016 1:56:34 PM com.sun.faces.renderkit.RenderKitUtils renderHtmlErrorPage
    AVERTISSEMENT: JSF1087 : Impossible de générer une page d’erreur Facelets car la réponse a déjà été validée.
    nov. 25, 2016 1:56:34 PM com.sun.faces.renderkit.RenderKitUtils renderHtmlErrorPage
    GRAVE: javax.faces.FacesException
    javax.faces.FacesException
    	at com.sun.faces.context.ExceptionHandlerImpl.handle(ExceptionHandlerImpl.java:141)
    	at javax.faces.context.ExceptionHandlerWrapper.handle(ExceptionHandlerWrapper.java:100)
    	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:119)
    	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
    	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
    	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
    	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:528)
    	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1100)
    	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:687)
    	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1520)
    	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1476)
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    	at java.lang.Thread.run(Thread.java:745)
    Caused by: java.lang.NullPointerException
    	at org.laplace.controller.PosteBean.getItems(PosteBean.java:51)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:498)
    	at javax.el.BeanELResolver.getValue(BeanELResolver.java:97)
    	at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
    	at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
    	at org.apache.el.parser.AstValue.getValue(AstValue.java:169)
    	at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:184)
    	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.UIData.getValue(UIData.java:732)
    	at org.primefaces.component.api.UIData.getDataModel(UIData.java:764)
    	at javax.faces.component.UIData.getRowCount(UIData.java:356)
    	at org.primefaces.component.api.UIData.calculateFirst(UIData.java:215)
    	at org.primefaces.component.datatable.DataTableRenderer.preRender(DataTableRenderer.java:117)
    	at org.primefaces.component.datatable.DataTableRenderer.encodeEnd(DataTableRenderer.java:85)
    	at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1903)
    	at javax.faces.render.Renderer.encodeChildren(Renderer.java:176)
    	at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:889)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1896)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
    	at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:451)
    	at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
    	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
    	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
    	... 23 more
     
    nov. 25, 2016 1:56:34 PM com.sun.faces.context.ExceptionHandlerImpl log
    1100: JSF1073 : javax.el.ELException intercepté durant le traitement de RENDER_RESPONSE 6 : UIComponent-ClientId=, Message=/pages/poste.xhtml @25,66 value="#{poste.items}": Error reading 'items' on type org.laplace.controller.PosteBean
    nov. 25, 2016 1:56:34 PM com.sun.faces.context.ExceptionHandlerImpl log
    1100: /pages/poste.xhtml @25,66 value="#{poste.items}": Error reading 'items' on type org.laplace.controller.PosteBean
    javax.el.ELException: /pages/poste.xhtml @25,66 value="#{poste.items}": Error reading 'items' on type org.laplace.controller.PosteBean
    	at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:114)
    	at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:194)
    	at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:182)
    	at javax.faces.component.UIData.getValue(UIData.java:732)
    	at org.primefaces.component.api.UIData.getDataModel(UIData.java:764)
    	at javax.faces.component.UIData.getRowCount(UIData.java:356)
    	at org.primefaces.component.api.UIData.calculateFirst(UIData.java:215)
    	at org.primefaces.component.datatable.DataTableRenderer.preRender(DataTableRenderer.java:117)
    	at org.primefaces.component.datatable.DataTableRenderer.encodeEnd(DataTableRenderer.java:85)
    	at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1903)
    	at javax.faces.render.Renderer.encodeChildren(Renderer.java:176)
    	at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:889)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1896)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
    	at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:451)
    	at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
    	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
    	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
    	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
    	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
    	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
    	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:528)
    	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1100)
    	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:687)
    	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1520)
    	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1476)
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    	at java.lang.Thread.run(Thread.java:745)
    Caused by: javax.el.ELException: Error reading 'items' on type org.laplace.controller.PosteBean
    	at javax.el.BeanELResolver.getValue(BeanELResolver.java:101)
    	at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
    	at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
    	at org.apache.el.parser.AstValue.getValue(AstValue.java:169)
    	at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:184)
    	at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109)
    	... 42 more
    Caused by: java.lang.NullPointerException
    	at org.laplace.controller.PosteBean.getItems(PosteBean.java:51)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:498)
    	at javax.el.BeanELResolver.getValue(BeanELResolver.java:97)
    	... 47 more

  13. #13
    Membre régulier
    Inscrit en
    Mai 2003
    Messages
    350
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 350
    Points : 84
    Points
    84
    Par défaut
    bon c'est comme tu l'as dis le itemService est null car quand je modifie le code ainsi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    public List<CutPoste> getItems() {	
    		if (itemService == null) {
    			System.out.println("Service is null");
    		}
    		else {
    		    items = itemService.list();		
    		}
    		return items;
    	}
    alors j'ai dans la console
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Service is null
    Service is null
    Comment initialiser alors.

  14. #14
    Membre régulier
    Inscrit en
    Mai 2003
    Messages
    350
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 350
    Points : 84
    Points
    84
    Par défaut
    j'ai fini par comprendre que mon PosteBean n'étant pas un conteneur spring donc le itemService ne pouvait pas être injecté.
    Selon les recherches nombreuses solution ont été proposées mais en vain et là je suis tombé sur ce site http://blog.jdriven.com/2015/03/usin...anaged-object/.
    J'ai testé avec ça a marché mais il y a quelque chose que je ne comprends pas. Je m'explique:
    voici mes codes
    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
    package org.laplace.controller;
     
    import org.laplace.service.CutPosteService;
    import org.springframework.beans.BeansException;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.ApplicationContextAware;
    import org.springframework.stereotype.Component;
     
    /**
    * Register this SpringContextBridge as a Spring Component.
    */
    @Component 
    public class SpringContextBridge 
            implements SpringContextBridgedServices, ApplicationContextAware {
     
        private static ApplicationContext applicationContext;
     
        @Autowired
        private CutPosteService posteService; //Autowire the TaxService
     
        @Override
        public void setApplicationContext(ApplicationContext applicationContext) 
                throws BeansException {
            this.applicationContext = applicationContext;
        }
     
        /**
         * A static method to lookup the SpringContextBridgedServices Bean in 
         * the applicationContext. It is basically an instance of itself, which 
         * was registered by the @Component annotation.
         *
         * @return the SpringContextBridgedServices, which exposes all the 
         * Spring services that are bridged from the Spring context.
         */
        public static SpringContextBridgedServices services() {
            return applicationContext.getBean(SpringContextBridgedServices.class);
        }
     
        @Override
        public CutPosteService getPosteService() {
            return posteService; //Return the Autowired taxService
        }
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    package org.laplace.controller;
     
    import org.laplace.service.CutPosteService;
     
    /**
     * This interface represents a list of Spring Beans (services) which need to be referenced from a non Spring class.
     */
    public interface SpringContextBridgedServices {
    	CutPosteService getPosteService();
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    package org.laplace.controller;
     
    public interface SpringContextBridgedServicesAlternative {
     
        <T> T getService(Class<T> serviceType);
    }

    PosteBean

    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
    package org.laplace.controller;
    
    import java.io.Serializable;
    import java.util.List;
    
    import javax.annotation.PostConstruct;
    import javax.faces.application.FacesMessage;
    import javax.faces.bean.ManagedBean;
    import javax.faces.bean.ManagedProperty;
    import javax.faces.bean.SessionScoped;
    import javax.faces.bean.ViewScoped;
    import javax.faces.context.ExternalContext;
    import javax.faces.context.FacesContext;
    import javax.servlet.ServletContext;
    
    import org.apache.taglibs.standard.lang.jstl.ELException;
    import org.laplace.model.CutPoste;
    import org.laplace.service.CutPosteService;
    //import org.laplace.validator.PosteValidator;
    import org.primefaces.event.SelectEvent;
    import org.primefaces.event.UnselectEvent;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.beans.factory.annotation.Configurable;
    import org.springframework.beans.factory.annotation.Qualifier;
    import org.springframework.context.annotation.Scope;
    import org.springframework.context.support.ClassPathXmlApplicationContext;
    import org.springframework.stereotype.Component;
    import org.springframework.stereotype.Controller;
    import org.springframework.test.context.ContextConfiguration;
    import org.springframework.web.context.support.WebApplicationContextUtils;
    
    @ManagedBean(name = "poste")
    @ViewScoped 
    public class PosteBean implements Serializable {
    	
    	@Autowired
    	private CutPosteService itemService;
    	
    	private CutPoste selectedItem = new CutPoste(); 
    	private List<CutPoste> items;
    	
    	public CutPosteService getItemService() {
    		return itemService;
    	}
        
    	public void setItemService(CutPosteService itemService) {
    		this.itemService = itemService;
    	}
    
    	public CutPoste getSelectedItem() {
    		return selectedItem;
    	}
    
    	public void setSelectedItem(CutPoste selectedItem) {
    		this.selectedItem = selectedItem;
    	}
    	
    	public void editAction(CutPoste item) {
    		selectedItem = item;
    	}
    	
    	public List<CutPoste> getItems() {	
    		System.out.println("get Items method ...");
    		if (itemService == null) {
    			System.out.println("Item Sercice is Null");
    			itemService = SpringContextBridge.services().getPosteService();
    			items = itemService.list();	
    		}
    		else {
    			System.out.println("Item Sercice is Not Null");
    			items = itemService.list();		
    		}
    		
    		return items;
    	}
    
    	public void setItems(List<CutPoste> items) {
    		this.items = items;
    	}
    
    	public void onRowSelect(SelectEvent event) { // ajout
            System.out.println("Row selected Method");//FacesContext.getCurrentInstance().getExternalContext().redirect("page.xhtml?id=" +pat.getId());
            FacesMessage msg = new FacesMessage("Item Selected", ((CutPoste) event.getObject()).getPC_CODE());
            FacesContext.getCurrentInstance().addMessage(null, msg);
        }
    	 
    	public void onRowUnselect(UnselectEvent event) {
    	    FacesMessage msg = new FacesMessage("Item Unselected", ((CutPoste) event.getObject()).getPC_CODE());
    	    FacesContext.getCurrentInstance().addMessage(null, msg);
    	}
    	
    	@PostConstruct
        private void init() {
            ExternalContext externalContext = FacesContext.getCurrentInstance().getExternalContext();
            ServletContext servletContext = (ServletContext) externalContext.getContext();
            WebApplicationContextUtils.getRequiredWebApplicationContext(servletContext).
                                       getAutowireCapableBeanFactory().
                                       autowireBean(this);
        }
    	
    }
    J'ai modifié donc le PosteBean (voir en gras)

    Logiquement si c'est le SpringContextBridge qui initialise mon itemService alors je devrais avoir à la console Item Sercice is Null
    mais quand j'execute regarder ce que j'ai à la console
    get Items method ...
    Item Sercice is Not Null
    get Items method ...
    Item Sercice is Not Null
    ça voudrait dire que le itemService est initialise par spring alors que sans ce rajout j'avais itemservice null alors je ne comprends pas.

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

Discussions similaires

  1. Exception java.lang.NullPointerException sans cause
    Par saraInfoSab dans le forum Débuter avec Java
    Réponses: 7
    Dernier message: 18/04/2012, 10h54
  2. Probleme erreur java.lang.NullPointerException
    Par Tsukaasa dans le forum Langage
    Réponses: 4
    Dernier message: 25/05/2006, 18h19
  3. Réponses: 8
    Dernier message: 11/05/2006, 19h32
  4. [JDIC]Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
    Par kedare dans le forum Concurrence et multi-thread
    Réponses: 4
    Dernier message: 06/05/2006, 22h45
  5. java.lang.NullPointerException getparent()
    Par guano dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 17/03/2006, 17h38

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