Ajax4jsf or RichFaces question regarding NetBeans and Web Co
wbossons Dec 3, 2007 10:38 AMHello,
I recently ran into an issue when my project was forced to move to Netbeans 6, where the ajax commandLinks threw exceptions during the rendering phase.
The scenario is that the project ide platform was moved from Netbeans 5.5.1 to Netbeans 6, and some of the libraries were changed. We moved from using Studio Creator web ui runtime library to the Web Components library that comes with Netbeans. (Woodstock?)
Since that change, the ajax4jsf commandLinks which I was dynamically writing from a custom component will not render. They explode in the .encodeBegin method.
The error I see is:
[#|2007-11-30T17:11:40.546-0500|SEVERE|sun-appserver9.1|javax.enterprise.system.container.web|_ThreadID=24;_Thread
ame=httpSSLWorkerThread-8080-0;_RequestID=a7ec622a-6736-4f09-95f1-dc9c11ad6569;|WebModule[/albatross]null
java.lang.NullPointerException
at org.ajax4jsf.framework.renderer.AjaxRendererUtils.buildAjaxFunction(AjaxRendererUtils.java:368)
at org.ajax4jsf.framework.renderer.AjaxRendererUtils.buildAjaxFunction(AjaxRendererUtils.java:347)
at org.ajax4jsf.framework.renderer.AjaxRendererUtils.buildOnEvent(AjaxRendererUtils.java:156)
at org.ajax4jsf.framework.renderer.AjaxRendererUtils.buildOnClick(AjaxRendererUtils.java:131)
at org.ajax4jsf.renderkit.AjaxCommandRendererBase.getOnClick(AjaxCommandRendererBase.java:66)
at org.ajax4jsf.renderkit.html.CommandLinkRenderer.doEncodeBegin(CommandLinkRenderer.java:97)
at org.ajax4jsf.renderkit.html.CommandLinkRenderer.doEncodeBegin(CommandLinkRenderer.java:88)
at org.ajax4jsf.framework.renderer.RendererBase.encodeBegin(RendererBase.java:101)
at javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:788)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:884)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:892)
at javax.faces.render.Renderer.encodeChildren(Renderer.java:137)
at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:812)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:886)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:892)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:892)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:892)
at com.sun.faces.application.ViewHandlerImpl.doRenderView(ViewHandlerImpl.java:245)
at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:176)
at org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
at org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandler.java:260)
at com.sun.rave.web.ui.appbase.faces.ViewHandlerImpl.renderView(ViewHandlerImpl.java:320)
at org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
at org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandler.java:260)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:411)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:317)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
at org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:127)
at org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:277)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:288)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:271)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:202)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:206)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:150)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:268)
at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:6
7)
at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:568)
at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:813)
at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:339)
at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:261)
at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:212)
at com.sun.enterprise.web.portunif.PortUnificationPipeline$PUTask.doTask(PortUnificationPipeline.java:361)
at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265)
at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106)
|#]
The jars included in the new library are below. Is there a way to work around this by configuring the application (in web.xml?)?
jar:nbinst:///modules/ext/webui-jsf.jar!/
jar:nbinst:///modules/ext/commons-fileupload-1.0.jar!/
jar:nbinst:///modules/ext/json-2.jar!/
jar:nbinst:///modules/ext/prototype-1.5.0.jar!/
jar:nbinst:///modules/ext/dojo-0.9.0.jar!/
jar:nbinst:///modules/ext/jsf-extensions-common-0.1.jar!/
jar:nbinst:///modules/ext/jsf-extensions-dynamic-faces-0.1.jar!/
Thanks,
..\wb