ICEfaces
  1. ICEfaces
  2. ICE-6321

Add theme selection option to ace showcase

    Details

    • Type: Task Task
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.0-Beta2
    • Fix Version/s: 2.0.0
    • Component/s: Sample Apps
    • Labels:
      None
    • Environment:
      showcase
    • Affects:
      Sample App./Tutorial

      Description

      Add theme selection option to ace showcase

        Activity

        Hide
        Adnan Durrani added a comment -

        Theme selection control added to the showcase:

        Command: Commit
        Modified: D:\work\development\head\svn\ossrepo\icefaces2\trunk\icefaces\ace\samples\showcase\src\main\webapp\templates\header.xhtml
        Modified: D:\work\development\head\svn\ossrepo\icefaces2\trunk\icefaces\ace\samples\showcase\src\main\webapp\templates\page-template.xhtml
        Sending content: D:\work\development\head\svn\ossrepo\icefaces2\trunk\icefaces\ace\samples\showcase\src\main\webapp\templates\page-template.xhtml
        Sending content: D:\work\development\head\svn\ossrepo\icefaces2\trunk\icefaces\ace\samples\showcase\src\main\webapp\templates\header.xhtml
        Completed: At revision: 23274

        Show
        Adnan Durrani added a comment - Theme selection control added to the showcase: Command: Commit Modified: D:\work\development\head\svn\ossrepo\icefaces2\trunk\icefaces\ace\samples\showcase\src\main\webapp\templates\header.xhtml Modified: D:\work\development\head\svn\ossrepo\icefaces2\trunk\icefaces\ace\samples\showcase\src\main\webapp\templates\page-template.xhtml Sending content: D:\work\development\head\svn\ossrepo\icefaces2\trunk\icefaces\ace\samples\showcase\src\main\webapp\templates\page-template.xhtml Sending content: D:\work\development\head\svn\ossrepo\icefaces2\trunk\icefaces\ace\samples\showcase\src\main\webapp\templates\header.xhtml Completed: At revision: 23274
        Hide
        Adnan Durrani added a comment - - edited

        screencast taken using FF, IE, Opera and Chrome

        http://screencast.com/t/lAg4lalzwxt

        Show
        Adnan Durrani added a comment - - edited screencast taken using FF, IE, Opera and Chrome http://screencast.com/t/lAg4lalzwxt
        Hide
        Ken Fyten added a comment -

        Some problems with the current impl. of this:

        • Doesn't use JSF component for the theme selection, which is essential in a JSF demo app. Please use a h:selectOneMenu instead.
        • Doesn't keep the selected theme setting across demo/page views. Needs to bind to a server bean so that once you select a skin it stays selected until you change it again.
        • The initial value currently doesn't match the actual skin in use initially (the bean binding should take care of this).

        Also, I think it would be nicer if we didn't rely on JS for this, but rather update page on the server to change the bits that implement the skin change.

        Show
        Ken Fyten added a comment - Some problems with the current impl. of this: Doesn't use JSF component for the theme selection, which is essential in a JSF demo app. Please use a h:selectOneMenu instead. Doesn't keep the selected theme setting across demo/page views. Needs to bind to a server bean so that once you select a skin it stays selected until you change it again. The initial value currently doesn't match the actual skin in use initially (the bean binding should take care of this). Also, I think it would be nicer if we didn't rely on JS for this, but rather update page on the server to change the bits that implement the skin change.
        Hide
        Adnan Durrani added a comment -

        Suggested changes are applied.

        Command: Commit
        Adding: D:\work\development\head\svn\ossrepo\icefaces2\trunk\icefaces\ace\samples\showcase\src\main\java\org\icefaces\skin
        Adding: D:\work\development\head\svn\ossrepo\icefaces2\trunk\icefaces\ace\samples\showcase\src\main\java\org\icefaces\skin\Bean.java
        Modified: D:\work\development\head\svn\ossrepo\icefaces2\trunk\icefaces\ace\samples\showcase\src\main\webapp\templates\header.xhtml
        Modified: D:\work\development\head\svn\ossrepo\icefaces2\trunk\icefaces\ace\samples\showcase\src\main\webapp\templates\page-template.xhtml
        Sending content: D:\work\development\head\svn\ossrepo\icefaces2\trunk\icefaces\ace\samples\showcase\src\main\webapp\templates\header.xhtml
        Sending content: D:\work\development\head\svn\ossrepo\icefaces2\trunk\icefaces\ace\samples\showcase\src\main\java\org\icefaces\skin\Bean.java
        Sending content: D:\work\development\head\svn\ossrepo\icefaces2\trunk\icefaces\ace\samples\showcase\src\main\webapp\templates\page-template.xhtml
        Completed: At revision: 23293

        Show
        Adnan Durrani added a comment - Suggested changes are applied. Command: Commit Adding: D:\work\development\head\svn\ossrepo\icefaces2\trunk\icefaces\ace\samples\showcase\src\main\java\org\icefaces\skin Adding: D:\work\development\head\svn\ossrepo\icefaces2\trunk\icefaces\ace\samples\showcase\src\main\java\org\icefaces\skin\Bean.java Modified: D:\work\development\head\svn\ossrepo\icefaces2\trunk\icefaces\ace\samples\showcase\src\main\webapp\templates\header.xhtml Modified: D:\work\development\head\svn\ossrepo\icefaces2\trunk\icefaces\ace\samples\showcase\src\main\webapp\templates\page-template.xhtml Sending content: D:\work\development\head\svn\ossrepo\icefaces2\trunk\icefaces\ace\samples\showcase\src\main\webapp\templates\header.xhtml Sending content: D:\work\development\head\svn\ossrepo\icefaces2\trunk\icefaces\ace\samples\showcase\src\main\java\org\icefaces\skin\Bean.java Sending content: D:\work\development\head\svn\ossrepo\icefaces2\trunk\icefaces\ace\samples\showcase\src\main\webapp\templates\page-template.xhtml Completed: At revision: 23293
        Hide
        Adnan Durrani added a comment -
        • h:selectOneMenu used
        • selected theme persists across demo pages.
        • bean binding used. to use correct actual value.
        • AJAX request/response cycle used to change theme.
        Show
        Adnan Durrani added a comment - h:selectOneMenu used selected theme persists across demo pages. bean binding used. to use correct actual value. AJAX request/response cycle used to change theme.
        Hide
        Ken Fyten added a comment -

        Seeing this serialization warning in server log (should be made serializable):

        Dec 8, 2010 6:06:34 PM com.sun.faces.context.SessionMap put
        WARNING: JSF1063: WARNING! Setting non-serializable attribute value into HttpSession (key: skinBean, value class: org.icefaces.skin.Bean).

        ----------

        Seeing the following errors in the server console now when changing skins:

        Dec 8, 2010 6:12:53 PM com.sun.faces.context.AjaxExceptionHandlerImpl log
        SEVERE: Method not found: org.icefaces.skin.Bean@25927275.skinChanged()
        javax.faces.event.AbortProcessingException: Method not found: org.icefaces.skin.Bean@25927275.skinChanged()
        at javax.faces.event.MethodExpressionValueChangeListener.processValueChange(MethodExpressionValueChangeListener.java:149)
        at javax.faces.event.ValueChangeEvent.processListener(ValueChangeEvent.java:130)
        at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:773)
        at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:746)
        at javax.faces.component.UIViewRoot.processValidators(UIViewRoot.java:1161)
        at com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:72)
        at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:97)
        at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:114)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:308)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        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.core.StandardHostValve.invoke(StandardHostValve.java:127)
        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:298)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
        at java.lang.Thread.run(Thread.java:680)

        Show
        Ken Fyten added a comment - Seeing this serialization warning in server log (should be made serializable): Dec 8, 2010 6:06:34 PM com.sun.faces.context.SessionMap put WARNING: JSF1063: WARNING! Setting non-serializable attribute value into HttpSession (key: skinBean, value class: org.icefaces.skin.Bean). ---------- Seeing the following errors in the server console now when changing skins: Dec 8, 2010 6:12:53 PM com.sun.faces.context.AjaxExceptionHandlerImpl log SEVERE: Method not found: org.icefaces.skin.Bean@25927275.skinChanged() javax.faces.event.AbortProcessingException: Method not found: org.icefaces.skin.Bean@25927275.skinChanged() at javax.faces.event.MethodExpressionValueChangeListener.processValueChange(MethodExpressionValueChangeListener.java:149) at javax.faces.event.ValueChangeEvent.processListener(ValueChangeEvent.java:130) at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:773) at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:746) at javax.faces.component.UIViewRoot.processValidators(UIViewRoot.java:1161) at com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:72) at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:97) at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:114) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:308) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 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.core.StandardHostValve.invoke(StandardHostValve.java:127) 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:298) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) at java.lang.Thread.run(Thread.java:680)
        Hide
        Ken Fyten added a comment -

        Fixed by Judy.

        Show
        Ken Fyten added a comment - Fixed by Judy.

          People

          • Assignee:
            Adnan Durrani
            Reporter:
            Adnan Durrani
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: