drag and drop support programmatically
byarger Mar 16, 2007 1:47 PMI've got some HtmlPanelGrids that I'm creating programmatically, and I'd like to add drag and drop support. I've tried emulating the tags in the examples provided, but I'm getting a NullPointerException in org.richfaces.component.UIDragSupport.getEventHandler(UIDragSupport.java:110)
The code is calling getParent().getClientId(context), but getParent() is returning null. Here are some snippets of code where I'm adding the drag support:
HtmlDragSupport dragSupport = (HtmlDragSupport) FacesServices.getFacesComponent(HtmlDragSupport.COMPONENT_TYPE); dragSupport.setDragType("appointment"); dragSupport.setDragValue(trainerHalfHourBlock.getId()); HtmlDndParam param = (HtmlDndParam) FacesServices.getFacesComponent(HtmlDndParam.COMPONENT_TYPE); param.setName("label"); param.setValue(trainerHalfHourBlock.getId()); dragSupport.getChildren().add(param); trainerHalfHourBlock.getChildren().add(dragSupport);
I have a very similar block for all the drop zones. Here is the stacktrace that I'm getting when I try to hit the page:
Caused by: class javax.faces.FacesException : Could not get property onmousedown of component scheduleForm:trainerviewsubview:TRAINER_BLOCK144_1500 - javax.faces.component._ComponentAttributesMap.getComponentProperty(_ComponentAttributesMap.java:392) - javax.faces.component._ComponentAttributesMap.get(_ComponentAttributesMap.java:235) - org.apache.myfaces.shared_impl.renderkit.html.HtmlRendererUtils.renderHTMLAttribute(HtmlRendererUtils.java:535) - org.apache.myfaces.shared_impl.renderkit.html.HtmlRendererUtils.renderHTMLAttributes(HtmlRendererUtils.java:549) - org.apache.myfaces.shared_impl.renderkit.html.HtmlGridRendererBase.encodeEnd(HtmlGridRendererBase.java:93) - javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:539) - org.apache.myfaces.shared_impl.renderkit.RendererUtils.renderChild(RendererUtils.java:419) - org.apache.myfaces.shared_impl.renderkit.html.HtmlGridRendererBase.renderChildren(HtmlGridRendererBase.java:229) - org.apache.myfaces.shared_impl.renderkit.html.HtmlGridRendererBase.encodeEnd(HtmlGridRendererBase.java:101) - javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:539) - com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:252) - com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:249) - com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:249) - com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:249) - com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:573) - org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108) - org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandler.java:229) - org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41) - org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:132) - javax.faces.webapp.FacesServlet.service(FacesServlet.java:140) - com.frappier.aims.web.servlet.ErrorHandler.service(ErrorHandler.java:69) - org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) - org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) - org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:100) - org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) - org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) - org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:96) - org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:220) - org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) - org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) - org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:264) - org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107) - org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72) - org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) - org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:110) - org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) - org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) - org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) - org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:81) - org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) - org.acegisecurity.ui.logout.LogoutFilter.doFilter(LogoutFilter.java:106) - org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) - org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:229) - org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) - org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:148) - org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98) - org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) - org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) - org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147) - org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) - org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) - org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:174) - org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:77) - org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) - org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) - org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) - org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) - org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) - org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) - org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) - org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) - org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) - org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) - org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) - org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) - org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) - java.lang.Thread.run(Thread.java:619) Caused by: class java.lang.reflect.InvocationTargetException : null - sun.reflect.GeneratedMethodAccessor267.invoke(Unknown Source) - sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) - java.lang.reflect.Method.invoke(Method.java:597) - javax.faces.component._ComponentAttributesMap.getComponentProperty(_ComponentAttributesMap.java:387) - javax.faces.component._ComponentAttributesMap.get(_ComponentAttributesMap.java:235) - org.apache.myfaces.shared_impl.renderkit.html.HtmlRendererUtils.renderHTMLAttribute(HtmlRendererUtils.java:535) - org.apache.myfaces.shared_impl.renderkit.html.HtmlRendererUtils.renderHTMLAttributes(HtmlRendererUtils.java:549) - org.apache.myfaces.shared_impl.renderkit.html.HtmlGridRendererBase.encodeEnd(HtmlGridRendererBase.java:93) - javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:539) - org.apache.myfaces.shared_impl.renderkit.RendererUtils.renderChild(RendererUtils.java:419) - org.apache.myfaces.shared_impl.renderkit.html.HtmlGridRendererBase.renderChildren(HtmlGridRendererBase.java:229) - org.apache.myfaces.shared_impl.renderkit.html.HtmlGridRendererBase.encodeEnd(HtmlGridRendererBase.java:101) - javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:539) - com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:252) - com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:249) - com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:249) - com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:249) - com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:573) - org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108) - org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandler.java:229) - org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41) - org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:132) - javax.faces.webapp.FacesServlet.service(FacesServlet.java:140) - com.frappier.aims.web.servlet.ErrorHandler.service(ErrorHandler.java:69) - org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) - org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) - org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:100) - org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) - org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) - org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:96) - org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:220) - org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) - org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) - org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:264) - org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107) - org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72) - org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) - org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:110) - org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) - org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) - org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) - org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:81) - org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) - org.acegisecurity.ui.logout.LogoutFilter.doFilter(LogoutFilter.java:106) - org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) - org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:229) - org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) - org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:148) - org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98) - org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) - org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) - org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147) - org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) - org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) - org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:174) - org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:77) - org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) - org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) - org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) - org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) - org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) - org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) - org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) - org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) - org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) - org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) - org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) - org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) - org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) - java.lang.Thread.run(Thread.java:619) Caused by: class java.lang.NullPointerException : null - org.richfaces.component.UIDragSupport.getEventHandler(UIDragSupport.java:110) - org.richfaces.component.UIDragSupport.getEventString(UIDragSupport.java:135) - org.ajax4jsf.framework.ajax.EventValueBinding.getValue(EventValueBinding.java:87) - javax.faces.component.html._ComponentUtils.getStringValue(_ComponentUtils.java:36) - javax.faces.component.html.HtmlPanelGrid.getOnmousedown(HtmlPanelGrid.java:280) - sun.reflect.GeneratedMethodAccessor267.invoke(Unknown Source) - sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) - java.lang.reflect.Method.invoke(Method.java:597) - javax.faces.component._ComponentAttributesMap.getComponentProperty(_ComponentAttributesMap.java:387) - javax.faces.component._ComponentAttributesMap.get(_ComponentAttributesMap.java:235) - org.apache.myfaces.shared_impl.renderkit.html.HtmlRendererUtils.renderHTMLAttribute(HtmlRendererUtils.java:535) - org.apache.myfaces.shared_impl.renderkit.html.HtmlRendererUtils.renderHTMLAttributes(HtmlRendererUtils.java:549) - org.apache.myfaces.shared_impl.renderkit.html.HtmlGridRendererBase.encodeEnd(HtmlGridRendererBase.java:93) - javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:539) - org.apache.myfaces.shared_impl.renderkit.RendererUtils.renderChild(RendererUtils.java:419) - org.apache.myfaces.shared_impl.renderkit.html.HtmlGridRendererBase.renderChildren(HtmlGridRendererBase.java:229) - org.apache.myfaces.shared_impl.renderkit.html.HtmlGridRendererBase.encodeEnd(HtmlGridRendererBase.java:101) - javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:539) - com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:252) - com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:249) - com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:249) - com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:249) - com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:573) - org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108) - org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandler.java:229) - org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41) - org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:132) - javax.faces.webapp.FacesServlet.service(FacesServlet.java:140) - com.frappier.aims.web.servlet.ErrorHandler.service(ErrorHandler.java:69) - org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) - org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) - org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:100) - org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) - org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) - org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:96) - org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:220) - org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) - org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) - org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:264) - org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107) - org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72) - org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) - org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:110) - org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) - org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) - org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) - org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:81) - org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) - org.acegisecurity.ui.logout.LogoutFilter.doFilter(LogoutFilter.java:106) - org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) - org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:229) - org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) - org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:148) - org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98) - org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) - org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) - org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147) - org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) - org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) - org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:174) - org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:77) - org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) - org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) - org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) - org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) - org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) - org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) - org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) - org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) - org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) - org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) - org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) - org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) - org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) - java.lang.Thread.run(Thread.java:619)
Any ideas? I tried calling setParent on the DragSupport class, which I don't think you're supposed to do (I think adding to the children collection is the correct way to add to the component tree) but it was still null when it got to that spot. I'm using Facelets 1.1.12, Myfaces 1.1.5, Ajax4jsf 1.1.0, and RichFaces 3.0.0.