2 Replies Latest reply on Jul 13, 2009 3:24 AM by Baroch Oren

    Customizing header in rich:simpleTogglePanel

    John Doe Newbie

      Hi!

      Whenever I try to put some components into the header-facet of a simpleTogglePanel, only the component added last is being displayed. Moreover, if this component is a button for example, it invoked the toggle when you press it.

      Can someone please give me an example of how to put a customized header into the simpleTogglePanel? Maybe a label and a button that does not trigger the toggle (if that is possible at all).

      Kind regards,
      John Doe

        • 1. rich:simpleTogglePanel Issues
          Baroch Oren Newbie

          Using: Richfaces 3.3.1.GA with facelets 1.1.15.b1 and MyFaces 1.2.4 on jetty 6.1.3

          Hello all, first time poster so sorry if I fail to comply with forum rules or anything.

          I want to create a Master-detail like page, that lists all available targets, each as a row, and upon a click on a target, a detail screen would open.
          My design led me to choose SimpleTogglePanel array.

          I wish to show the page initially as a list of closed s, acheived by using <c:forEach>.
          The issue i've came upon is: every "initially closed" , once clicked to be opened, would fire an unexplained NPE.

          Source:

          <?xml version="1.0" encoding="UTF-8" ?>
          <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
          <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page"
          xmlns="http://www.w3.org/1999/xhtml"
          xmlns:ui="http://java.sun.com/jsf/facelets"
          xmlns:h="http://java.sun.com/jsf/html"
          xmlns:f="http://java.sun.com/jsf/core"
          xmlns:z="http://www.qualcomm.com/jsf/core"
          xmlns:c="http://java.sun.com/jstl/core"
          xmlns:fn="http://java.sun.com/jsp/jstl/functions"
          xmlns:t="http://myfaces.apache.org/tomahawk"
          xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"
          xmlns:rich="http://richfaces.ajax4jsf.org/rich"
          xmlns:a="http://www.ged-i.com/jsf">
          <ui:composition>
          <f:subview id="targets">
          <h:form>

          <rich:simpleTogglePanel switchType="ajax" opened="#{false}">
          <t:outputText valu="text for test"></t:outputText>
          </rich:simpleTogglePanel>


          </h:form>
          </f:subview>
          </ui:composition>
          </jsp:root>


          Error:

          [ERROR] _ErrorPageWriter - An exception occurred <java.lang.NullPointerException: exception can not be null.>java.lang.NullPointerException: exception can not be null.
          at org.apache.myfaces.context.servlet.ServletExternalContextImpl.checkNull(ServletExternalContextImpl.java:503)
          at org.apache.myfaces.context.servlet.ServletExternalContextImpl.log(ServletExternalContextImpl.java:404)
          at org.richfaces.component.UISimpleTogglePanel.updateModel(UISimpleTogglePanel.java:315)
          at org.richfaces.component.UISimpleTogglePanel.broadcast(UISimpleTogglePanel.java:207)
          at org.ajax4jsf.component.UIInclude.broadcast(UIInclude.java:170)
          at org.ajax4jsf.component.AjaxViewRoot.processEvents(AjaxViewRoot.java:321)
          at org.ajax4jsf.component.AjaxViewRoot.broadcastEvents(AjaxViewRoot.java:296)
          at org.ajax4jsf.component.AjaxViewRoot.processPhase(AjaxViewRoot.java:253)
          at org.ajax4jsf.component.AjaxViewRoot.processUpdates(AjaxViewRoot.java:432)
          at org.apache.myfaces.lifecycle.UpdateModelValuesExecutor.execute(UpdateModelValuesExecutor.java:33)
          at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:103)
          at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:76)
          at javax.faces.webapp.FacesServlet.service(FacesServlet.java:151)
          at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:502)
          at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1124)
          at com.gedi.web.util.myfaces.webapp.filter.GedIExtensionsFilter.doFilter(GedIExtensionsFilter.java:150)
          at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1115)
          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:368)
          at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:495)
          at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1115)
          at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
          at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:236)
          at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
          at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1115)
          at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:361)
          at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
          at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
          at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766)
          at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:417)
          at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230)
          at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
          at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
          at org.mortbay.jetty.Server.handle(Server.java:324)
          at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:534)
          at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:879)
          at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:741)
          at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:207)
          at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:403)
          at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228)
          at org.mortbay.jetty.security.SslSocketConnector$SslConnection.run(SslSocketConnector.java:636)
          at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:522)

          • 2. Re: rich:simpleTogglePanel Issues
            Baroch Oren Newbie

             

            "Baroch Oren" wrote:
            Using: Richfaces 3.3.1.GA with facelets 1.1.15.b1 and MyFaces 1.2.4 on jetty 6.1.3


            basically, that's all. there's an open Jira issue about the bug I've been suffering from.
            #RF-7381
            fixed for 3.3.2.