Hi, The NullPointerException is raised in the following line:
if (!type.equals(String.class) && ! type.equals(Object.class)) Thus type is null. type is the result of calling getPropertyBinding().getType(facesContext), which returns null in your case. However, I don't know exactly why this returns null, but maybe this clarification is the trigger for someone else, who knows it. Regards, Jakob Korherr 2009/12/15 Michael Heinen <michael.hei...@recommind.com> > Hi, > > > > I am still working on my update from JSF 1.1 to 1.2. > > > > Now Buttons using a t:updateActionListener are not working anymore due to a > > java.lang.NullPointerException > > at > org.apache.myfaces.custom.updateactionlistener.UpdateActionListener.processAction(UpdateActionListener.java:137) > > > > The buttons are working with the 1.1 compliant libs. > > The buttons are working without t:updateActionListener. > > > > Complete Stack: > > javax.faces.FacesException: Exception while calling broadcast on component > : {Component-Path : [Class: org.ajax4jsf.component.AjaxViewRoot,ViewId: > /batches.jsp][Class: org.apache.myfaces.custom.document.Document,Id: > j_id_jsp_1727476414_3][Class: > org.apache.myfaces.custom.document.DocumentBody,Id: > j_id_jsp_1727476414_7][Class: org.apache.myfaces.custom.div.Div,Id: > content][Class: org.apache.myfaces.custom.div.Div,Id: batches][Class: > javax.faces.component.html.HtmlForm,Id: batchesForm][Class: > org.apache.myfaces.custom.div.Div,Id: batchlist][Class: > org.apache.myfaces.custom.datalist.HtmlDataList,Id: > j_id_jsp_1874425695_8][Class: org.apache.myfaces.custom.div.Div,Id: > j_id_jsp_1874425695_9][Class: org.apache.myfaces.custom.div.Div,Id: > openBatchBox][Class: > org.apache.myfaces.component.html.ext.HtmlCommandButton,Id: batchSelectCmd]} > > at > javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:562) > > at > javax.faces.component.UICommand.broadcast(UICommand.java:110) > > at javax.faces.component.UIData.broadcast(UIData.java:721) > > at > org.ajax4jsf.component.AjaxViewRoot.processEvents(AjaxViewRoot.java:324) > > at > org.ajax4jsf.component.AjaxViewRoot.broadcastEvents(AjaxViewRoot.java:299) > > at > org.ajax4jsf.component.AjaxViewRoot.processPhase(AjaxViewRoot.java:256) > > at > org.ajax4jsf.component.AjaxViewRoot.processDecodes(AjaxViewRoot.java:412) > > at > org.apache.myfaces.lifecycle.ApplyRequestValuesExecutor.execute(ApplyRequestValuesExecutor.java:32) > > at > org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:103) > > at > org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:76) > > at > org.apache.myfaces.custom.ppr.PPRLifecycleWrapper.execute(PPRLifecycleWrapper.java:68) > > at > javax.faces.webapp.FacesServlet.service(FacesServlet.java:178) > > at > com.recommind.xxx..servlets.FacesServletWrapper.service(FacesServletWrapper.java:123) > > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) > > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178) > > at > org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290) > > at > org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:388) > > at > org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:515) > > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:384) > > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > com.recommind.xxx.filters.LoginFilter.doFilter(LoginFilter.java:193) > > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > com.recommind.xxx.filters.EncodingFilter.doFilter(EncodingFilter.java:49) > > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > com.recommind.xxx.filters.TimerFilter.doFilter(TimerFilter.java:71) > > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) > > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) > > at > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433) > > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) > > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) > > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) > > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) > > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845) > > at > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) > > at > org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) > > at java.lang.Thread.run(Thread.java:619) > > Caused by: java.lang.NullPointerException > > at > org.apache.myfaces.custom.updateactionlistener.UpdateActionListener.processAction(UpdateActionListener.java:137) > > at > javax.faces.event.ActionEvent.processListener(ActionEvent.java:51) > > at > javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:554) > > ... 43 more > > Cause: > > java.lang.NullPointerException > > at > org.apache.myfaces.custom.updateactionlistener.UpdateActionListener.processAction(UpdateActionListener.java:137) > > at > javax.faces.event.ActionEvent.processListener(ActionEvent.java:51) > > at > javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:554) > > at > javax.faces.component.UICommand.broadcast(UICommand.java:110) > > at javax.faces.component.UIData.broadcast(UIData.java:721) > > at > org.ajax4jsf.component.AjaxViewRoot.processEvents(AjaxViewRoot.java:324) > > at > org.ajax4jsf.component.AjaxViewRoot.broadcastEvents(AjaxViewRoot.java:299) > > at > org.ajax4jsf.component.AjaxViewRoot.processPhase(AjaxViewRoot.java:256) > > at > org.ajax4jsf.component.AjaxViewRoot.processDecodes(AjaxViewRoot.java:412) > > at > org.apache.myfaces.lifecycle.ApplyRequestValuesExecutor.execute(ApplyRequestValuesExecutor.java:32) > > at > org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:103) > > at > org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:76) > > at > org.apache.myfaces.custom.ppr.PPRLifecycleWrapper.execute(PPRLifecycleWrapper.java:68) > > at > javax.faces.webapp.FacesServlet.service(FacesServlet.java:178) > > at > com.recommind.xxx.servlets.FacesServletWrapper.service(FacesServletWrapper.java:123) > > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) > > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178) > > at > org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290) > > at > org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:388) > > at > org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:515) > > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:384) > > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > com.recommind.xxx.filters.LoginFilter.doFilter(LoginFilter.java:193) > > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > com.recommind.xxx.client.web.filters.EncodingFilter.doFilter(EncodingFilter.java:49) > > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > com.recommind.xxx.filters.TimerFilter.doFilter(TimerFilter.java:71) > > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) > > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) > > at > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433) > > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) > > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) > > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) > > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) > > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845) > > at > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) > > at > org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) > > at java.lang.Thread.run(Thread.java:619) > > > > > > Sample jsp snippet: > > <t:dataList var="batch" > > value="#{MyController1.myList}” …> > > <t:commandButton id="batchSelectCmd" forceId="true" > > immediate="true" > > action="#{MyController12.search}" > > value="foo" > > disabled="#{empty > batch.attributes['reviewState'][0]}" > > ... > > > <t:updateActionListener > property="#{requestScope['selectedBatch']}" value="#{batch.value}"/> > > </t:commandButton> > > </t:dataList> > > > > Updated Libs: > > myFaces from 1.1.6 to 1.2.8 > > tomahawk from 1.1.7 to tomahawk12-1.1.9 > > tomhahawk sandbox from 1.1.7 to 1.1.9 > > richfaces from 3.1.5 to 3.3.2 (api,impl and ui) > > tiles from 1 to 2.0.5 > > > > Any ideas? > > Michael > > > > > > [image: cid:image001.gif@01C6372E.CB2041F0] > > *Michael Heinen* > Senior Software Engineer > > Recommind GmbH > Tel: +49 (0) 2226 1596620 > > Email: michael.hei...@recommind.com > > > > Recommind GmbH, Vertretungsberechtigter Geschäftsführer Hartwig Laute, > Registergericht Amtsgericht Bonn, Registernummer HRB 10646 > > > > *This e-mail may contain confidential and/or privileged information. If > you are not the intended recipient (or have received this e-mail in error) > please notify the sender immediately and destroy this e-mail. Any > unauthorised copying, disclosure or distribution of the material in this > e-mail is strictly forbidden.* > > * * > > *Diese E-Mail enthält vertrauliche und/oder rechtlich geschützte > Informationen. Wenn Sie nicht der richtige Adressat sind oder diese E-Mail > irrtümlich erhalten haben, informieren Sie bitte sofort den Absender und > vernichten Sie diese Mail. Das unerlaubte Kopieren sowie die unbefugte > Weitergabe dieser Mail ist nicht gestattet.* > > >