ICEfaces
  1. ICEfaces
  2. ICE-4552

Investigate RenderKit decoration strategies for standard components

    Details

    • Type: Task Task
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.0-Alpha1
    • Fix Version/s: 2.0-Alpha2, 2.0.0
    • Component/s: Framework
    • Labels:
      None
    • Environment:
      jsf 2.0

      Description

      Look at how RenderKit decoration is done and how we might apply it to overriding features in the standard components.

        Issue Links

          Activity

          Deryk Sinotte created issue -
          Hide
          Deryk Sinotte added a comment -

          I find some problematic behaviour with RenderKit decoration that didn't match the spec. I submitted a bug to Sun and it looks as if it's been fixed.

          https://javaserverfaces.dev.java.net/issues/show_bug.cgi?id=1112

          So we should be able to continue our investigation here.

          Show
          Deryk Sinotte added a comment - I find some problematic behaviour with RenderKit decoration that didn't match the spec. I submitted a bug to Sun and it looks as if it's been fixed. https://javaserverfaces.dev.java.net/issues/show_bug.cgi?id=1112 So we should be able to continue our investigation here.
          Deryk Sinotte made changes -
          Field Original Value New Value
          Assignee Greg Dick [ greg.dick ]
          Hide
          Ted Goddard added a comment -

          RenderKit decoration is confirmed to be working. The proposed feature is as follows:

          By default, the addition of icefaces.jar enables ICEfaces for all JSF pages in the application.
          A parameter: org.icefaces.render.auto = true (default behavior) = false (individual pages are configured for ICEfaces rendering).
          A tag/component: <ice:config render="true" /> configures ICEfaces rendering on specified pages.

          The configuration component is useful for general ICEfaces per-page configuration (fictitious attributes to start the discussion):

          <ice:config render="true" pushheartbeat="50s" profile="mobile" submitstrategy="delta" />

          Show
          Ted Goddard added a comment - RenderKit decoration is confirmed to be working. The proposed feature is as follows: By default, the addition of icefaces.jar enables ICEfaces for all JSF pages in the application. A parameter: org.icefaces.render.auto = true (default behavior) = false (individual pages are configured for ICEfaces rendering). A tag/component: <ice:config render="true" /> configures ICEfaces rendering on specified pages. The configuration component is useful for general ICEfaces per-page configuration (fictitious attributes to start the discussion): <ice:config render="true" pushheartbeat="50s" profile="mobile" submitstrategy="delta" />
          Ted Goddard made changes -
          Salesforce Case []
          Fix Version/s 2.0-Alpha2 [ 10214 ]
          Affects Version/s 2.0-Alpha1 [ 10213 ]
          Affects Version/s 2.0-Beta [ 10032 ]
          Assignee Greg Dick [ greg.dick ] Ted Goddard [ ted.goddard ]
          Hide
          Ted Goddard added a comment -

          The following cryptic Exception can be observed when the RenderKit is null, indicating that the page still contains <f:view renderKitId="xHTML_BASIC" contentType="text/html" >

          java.lang.NullPointerException
          at com.sun.faces.application.ApplicationImpl.applyAnnotations(ApplicationImpl.java:1870)
          at com.sun.faces.application.ApplicationImpl.createComponentApplyAnnotations(ApplicationImpl.java:1819)
          at com.sun.faces.application.ApplicationImpl.createComponent(ApplicationImpl.java:1090)
          at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.createComponent(ComponentTagHandlerDelegateImpl.java:326)
          at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:145)
          at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:114)
          at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:91)
          at com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:86)
          at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:91)
          at com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:75)
          at com.sun.faces.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:145)
          at com.sun.faces.application.view.FaceletViewHandlingStrategy.buildView(FaceletViewHandlingStrategy.java:715)
          at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
          at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
          at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
          at javax.faces.webapp.FacesServlet.service(FacesServlet.java:311)
          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: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:637)

          Show
          Ted Goddard added a comment - The following cryptic Exception can be observed when the RenderKit is null, indicating that the page still contains <f:view renderKitId="xHTML_BASIC" contentType="text/html" > java.lang.NullPointerException at com.sun.faces.application.ApplicationImpl.applyAnnotations(ApplicationImpl.java:1870) at com.sun.faces.application.ApplicationImpl.createComponentApplyAnnotations(ApplicationImpl.java:1819) at com.sun.faces.application.ApplicationImpl.createComponent(ApplicationImpl.java:1090) at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.createComponent(ComponentTagHandlerDelegateImpl.java:326) at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:145) at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:114) at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:91) at com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:86) at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:91) at com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:75) at com.sun.faces.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:145) at com.sun.faces.application.view.FaceletViewHandlingStrategy.buildView(FaceletViewHandlingStrategy.java:715) at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106) at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101) at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:311) 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: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:637)
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #19672 Thu Nov 12 14:19:24 MST 2009 ted.goddard separation of ICEfaces and non-ICEfaces pages (ICE-4552)
          Files Changed
          Commit graph ADD /icefaces/scratchpads/glimmer/core/src/main/java/org/icefaces/facelets
          Commit graph MODIFY /icefaces/scratchpads/glimmer/core/src/main/java/org/icefaces/push/BridgeSetup.java
          Commit graph MODIFY /icefaces/scratchpads/glimmer/samples/basic/src/main/webapp/nonicefaces.xhtml
          Commit graph MODIFY /icefaces/scratchpads/glimmer/compat/samples/auctionMonitor/web/auctionMonitor.xhtml
          Commit graph ADD /icefaces/scratchpads/glimmer/core/src/main/java/org/icefaces/facelets/tag/icefaces/core
          Commit graph MODIFY /icefaces/scratchpads/glimmer/core/src/main/java/org/icefaces/render/DOMRenderKit.java
          Commit graph MODIFY /icefaces/scratchpads/glimmer/compat/core/src/main/resources/META-INF/faces-config.xml
          Commit graph MODIFY /icefaces/scratchpads/glimmer/compat/core/src/main/java/com/icesoft/faces/application/ExtrasSetup.java
          Commit graph ADD /icefaces/scratchpads/glimmer/core/src/main/java/org/icefaces/facelets/tag
          Commit graph MODIFY /icefaces/scratchpads/glimmer/core/src/main/resources/META-INF/faces-config.xml
          Commit graph MODIFY /icefaces/scratchpads/glimmer/samples/basic/src/main/webapp/WEB-INF/web.xml
          Commit graph MODIFY /icefaces/scratchpads/glimmer/compat/samples/component-showcase/web/WEB-INF/includes/templates/page-template.xhtml
          Commit graph MODIFY /icefaces/scratchpads/glimmer/samples/basic/src/main/webapp/icefaces.xhtml
          Commit graph MODIFY /icefaces/scratchpads/glimmer/samples/auction/src/main/webapp/auction.xhtml
          Commit graph ADD /icefaces/scratchpads/glimmer/core/src/main/java/org/icefaces/facelets/tag/icefaces/core/ConfigHandler.java
          Commit graph MODIFY /icefaces/scratchpads/glimmer/core/src/main/resources/META-INF/core.taglib.xml
          Commit graph MODIFY /icefaces/scratchpads/glimmer/core/src/main/java/org/icefaces/context/DOMPartialViewContext.java
          Commit graph MODIFY /icefaces/scratchpads/glimmer/core/src/main/java/org/icefaces/util/EnvUtils.java
          Commit graph MODIFY /icefaces/scratchpads/glimmer/compat/samples/component-showcase/web/WEB-INF/faces-config.xml
          Commit graph MODIFY /icefaces/scratchpads/glimmer/core/src/main/java/org/icefaces/application/WindowScopeSetup.java
          Commit graph ADD /icefaces/scratchpads/glimmer/core/src/main/java/org/icefaces/facelets/tag/icefaces
          Ted Goddard made changes -
          Status Open [ 1 ] Resolved [ 5 ]
          Resolution Fixed [ 1 ]
          Ted Goddard made changes -
          Link This issue is duplicated by ICE-4798 [ ICE-4798 ]
          Ken Fyten made changes -
          Fix Version/s 2.0.0 [ 10230 ]
          Ken Fyten made changes -
          Status Resolved [ 5 ] Closed [ 6 ]

            People

            • Assignee:
              Ted Goddard
              Reporter:
              Deryk Sinotte
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: