ICEfaces-EE
  1. ICEfaces-EE
  2. IPCK-368

Reimplement Composite Components with JSF 2 Composite interfaces

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Won't Fix
    • Affects Version/s: EE-3.0.0.BETA
    • Fix Version/s: None
    • Component/s: Facelet Components
    • Labels:
      None
    • Environment:
      n/a

      Description

      The EE Composite Components are currently implemented using the Facelets 1.1/JSF 1.2 Template approach, rather than the newer JSF 2 Composite approach using <cc:interface> and <cc:implementation> Tags. Reimplementing the composite components with this newer approach could take advantage of many of the new features of composite interfaces, such as required attribute checking, default attributes, behaviours, facets, etc.

        Issue Links

          Activity

          Hide
          Philip Breau added a comment -

          http://java.net/jira/browse/JAVASERVERFACES-2033

          Bug in Mojarra prevents using composite components distributed in a separate jar with a custom namespace in Development mode. The following exception occurs:

          javax.faces.view.facelets.TagException: /resources/myCC/layout.xhtml @13,16 <cc:interface> Component Not Found for identifier: body.getParent().
          at com.sun.faces.facelets.tag.composite.InterfaceHandler.validateComponent(InterfaceHandler.java:135)
          at com.sun.faces.facelets.tag.composite.InterfaceHandler.apply(InterfaceHandler.java:125)
          at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98)
          at com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:93)
          at com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:86)
          at com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:308)
          at com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:367)
          at com.sun.faces.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:326)
          at com.sun.faces.facelets.tag.UserTagHandler.apply(UserTagHandler.java:142)
          at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
          at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:188)
          at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)
          at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98)
          at com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:93)
          at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98)
          at com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:86)
          at com.sun.faces.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:152)
          at com.sun.faces.application.view.FaceletViewHandlingStrategy.buildView(FaceletViewHandlingStrategy.java:769)
          at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:100)
          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:410)

          Show
          Philip Breau added a comment - http://java.net/jira/browse/JAVASERVERFACES-2033 Bug in Mojarra prevents using composite components distributed in a separate jar with a custom namespace in Development mode. The following exception occurs: javax.faces.view.facelets.TagException: /resources/myCC/layout.xhtml @13,16 <cc:interface> Component Not Found for identifier: body.getParent(). at com.sun.faces.facelets.tag.composite.InterfaceHandler.validateComponent(InterfaceHandler.java:135) at com.sun.faces.facelets.tag.composite.InterfaceHandler.apply(InterfaceHandler.java:125) at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98) at com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:93) at com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:86) at com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:308) at com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:367) at com.sun.faces.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:326) at com.sun.faces.facelets.tag.UserTagHandler.apply(UserTagHandler.java:142) at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137) at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:188) at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120) at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98) at com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:93) at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98) at com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:86) at com.sun.faces.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:152) at com.sun.faces.application.view.FaceletViewHandlingStrategy.buildView(FaceletViewHandlingStrategy.java:769) at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:100) 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:410)
          Hide
          Philip Breau added a comment -

          http://java.net/jira/browse/JAVASERVERFACES-1868

          Bug in Mojarra prevents the use of the default attribute. Fixed in 2.2. Following exception occurs:

          java.lang.IllegalArgumentException: Empty id attribute is not allowed
          javax.faces.component.UIComponentBase.validateId(UIComponentBase.java:539)
          javax.faces.component.UIComponentBase.setId(UIComponentBase.java:366)
          com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:168)
          javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:114)
          com.sun.faces.facelets.tag.composite.ImplementationHandler.apply(ImplementationHandler.java:74)
          javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:91)
          com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:86)
          com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:75)
          com.sun.faces.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:145)
          com.sun.faces.facelets.tag.jsf.CompositeComponentTagHandler.applyCompositeComponent(CompositeComponentTagHandler.java:342)
          com.sun.faces.facelets.tag.jsf.CompositeComponentTagHandler.applyNextHandler(CompositeComponentTagHandler.java:179)
          com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:204)
          javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:114)
          com.sun.faces.facelets.tag.composite.ImplementationHandler.apply(ImplementationHandler.java:74)
          javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:91)
          com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:86)
          com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:75)
          com.sun.faces.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:145)
          com.sun.faces.facelets.tag.jsf.CompositeComponentTagHandler.applyCompositeComponent(CompositeComponentTagHandler.java:342)
          com.sun.faces.facelets.tag.jsf.CompositeComponentTagHandler.applyNextHandler(CompositeComponentTagHandler.java:179)

          Show
          Philip Breau added a comment - http://java.net/jira/browse/JAVASERVERFACES-1868 Bug in Mojarra prevents the use of the default attribute. Fixed in 2.2. Following exception occurs: java.lang.IllegalArgumentException: Empty id attribute is not allowed javax.faces.component.UIComponentBase.validateId(UIComponentBase.java:539) javax.faces.component.UIComponentBase.setId(UIComponentBase.java:366) com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:168) javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:114) com.sun.faces.facelets.tag.composite.ImplementationHandler.apply(ImplementationHandler.java:74) javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:91) com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:86) com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:75) com.sun.faces.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:145) com.sun.faces.facelets.tag.jsf.CompositeComponentTagHandler.applyCompositeComponent(CompositeComponentTagHandler.java:342) com.sun.faces.facelets.tag.jsf.CompositeComponentTagHandler.applyNextHandler(CompositeComponentTagHandler.java:179) com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:204) javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:114) com.sun.faces.facelets.tag.composite.ImplementationHandler.apply(ImplementationHandler.java:74) javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:91) com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:86) com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:75) com.sun.faces.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:145) com.sun.faces.facelets.tag.jsf.CompositeComponentTagHandler.applyCompositeComponent(CompositeComponentTagHandler.java:342) com.sun.faces.facelets.tag.jsf.CompositeComponentTagHandler.applyNextHandler(CompositeComponentTagHandler.java:179)
          Hide
          Philip Breau added a comment -

          The following exception is seen with MyFaces 2.16 using a composite interface version of the <icecc:filterTable>, which includes <icecc:filterColumn> and <icecc:column> tags. The same stack trace is also seen with a composite interface version of the <icecc:dialog> tag:

          java.lang.NullPointerException
          org.apache.myfaces.view.facelets.tag.composite.CompositeComponentDefinitionTagHandler.apply(CompositeComponentDefinitionTagHandler.java:117)
          org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:57)
          org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:45)
          org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:354)
          org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:408)
          org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:369)
          org.apache.myfaces.view.facelets.tag.UserTagHandler.apply(UserTagHandler.java:124)
          javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49)
          org.apache.myfaces.view.facelets.tag.ui.DefineHandler.applyDefinition(DefineHandler.java:86)
          org.apache.myfaces.view.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:175)
          org.apache.myfaces.view.facelets.impl.TemplateContextImpl$TemplateManagerImpl.apply(TemplateContextImpl.java:182)
          org.apache.myfaces.view.facelets.impl.TemplateContextImpl.includeDefinition(TemplateContextImpl.java:131)
          org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeDefinition(DefaultFaceletContext.java:439)
          org.apache.myfaces.view.facelets.tag.ui.InsertHandler.apply(InsertHandler.java:93)
          javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49)
          javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:58)
          org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate.apply(ComponentTagHandlerDelegate.java:291)
          javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:53)
          javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49)
          javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:58)
          org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate.apply(ComponentTagHandlerDelegate.java:291)
          javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:53)
          org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:57)
          org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:45)
          org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:354)
          org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:408)
          org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:386)
          org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:244)
          org.apache.myfaces.view.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:148)
          org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:57)
          org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:45)
          org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:354)
          org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:408)
          org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:386)
          org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:244)
          org.apache.myfaces.view.facelets.tag.ui.IncludeHandler.apply(IncludeHandler.java:216)
          org.apache.myfaces.view.facelets.tag.jstl.core.ForEachHandler.apply(ForEachHandler.java:255)
          javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49)
          javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:58)
          org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate.apply(ComponentTagHandlerDelegate.java:291)
          javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:53)
          org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:57)
          org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:45)
          org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:354)
          org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:408)
          org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:386)
          org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:244)
          org.apache.myfaces.view.facelets.tag.ui.IncludeHandler.apply(IncludeHandler.java:216)
          org.apache.myfaces.view.facelets.tag.ui.DefineHandler.applyDefinition(DefineHandler.java:86)
          org.apache.myfaces.view.facelets.tag.ui.DecorateHandler.apply(DecorateHandler.java:248)
          org.apache.myfaces.view.facelets.impl.TemplateContextImpl$TemplateManagerImpl.apply(TemplateContextImpl.java:182)
          org.apache.myfaces.view.facelets.impl.TemplateContextImpl.includeDefinition(TemplateContextImpl.java:131)
          org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeDefinition(DefaultFaceletContext.java:439)
          org.apache.myfaces.view.facelets.tag.ui.InsertHandler.apply(InsertHandler.java:93)
          javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:58)
          org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate.apply(ComponentTagHandlerDelegate.java:291)
          javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:53)
          javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49)
          javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:58)
          org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate.apply(ComponentTagHandlerDelegate.java:291)
          javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:53)
          javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49)
          javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:58)
          org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate.apply(ComponentTagHandlerDelegate.java:291)
          javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:53)
          org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:57)
          org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:45)
          org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:354)
          org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:408)
          org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:386)
          org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:244)
          org.apache.myfaces.view.facelets.tag.ui.DecorateHandler.apply(DecorateHandler.java:202)
          javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49)
          javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:58)
          org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate.apply(ComponentTagHandlerDelegate.java:291)
          javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:53)
          javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49)
          javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:58)
          org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate.apply(ComponentTagHandlerDelegate.java:291)
          javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:53)
          javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49)
          org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:57)
          javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49)
          org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:45)
          org.apache.myfaces.view.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:151)
          org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage.buildView(FaceletViewDeclarationLanguage.java:435)
          org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:77)
          org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:241)
          javax.faces.webapp.FacesServlet.service(FacesServlet.java:199)

          Show
          Philip Breau added a comment - The following exception is seen with MyFaces 2.16 using a composite interface version of the <icecc:filterTable>, which includes <icecc:filterColumn> and <icecc:column> tags. The same stack trace is also seen with a composite interface version of the <icecc:dialog> tag: java.lang.NullPointerException org.apache.myfaces.view.facelets.tag.composite.CompositeComponentDefinitionTagHandler.apply(CompositeComponentDefinitionTagHandler.java:117) org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:57) org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:45) org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:354) org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:408) org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:369) org.apache.myfaces.view.facelets.tag.UserTagHandler.apply(UserTagHandler.java:124) javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49) org.apache.myfaces.view.facelets.tag.ui.DefineHandler.applyDefinition(DefineHandler.java:86) org.apache.myfaces.view.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:175) org.apache.myfaces.view.facelets.impl.TemplateContextImpl$TemplateManagerImpl.apply(TemplateContextImpl.java:182) org.apache.myfaces.view.facelets.impl.TemplateContextImpl.includeDefinition(TemplateContextImpl.java:131) org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeDefinition(DefaultFaceletContext.java:439) org.apache.myfaces.view.facelets.tag.ui.InsertHandler.apply(InsertHandler.java:93) javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49) javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:58) org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate.apply(ComponentTagHandlerDelegate.java:291) javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:53) javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49) javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:58) org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate.apply(ComponentTagHandlerDelegate.java:291) javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:53) org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:57) org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:45) org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:354) org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:408) org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:386) org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:244) org.apache.myfaces.view.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:148) org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:57) org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:45) org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:354) org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:408) org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:386) org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:244) org.apache.myfaces.view.facelets.tag.ui.IncludeHandler.apply(IncludeHandler.java:216) org.apache.myfaces.view.facelets.tag.jstl.core.ForEachHandler.apply(ForEachHandler.java:255) javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49) javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:58) org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate.apply(ComponentTagHandlerDelegate.java:291) javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:53) org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:57) org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:45) org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:354) org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:408) org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:386) org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:244) org.apache.myfaces.view.facelets.tag.ui.IncludeHandler.apply(IncludeHandler.java:216) org.apache.myfaces.view.facelets.tag.ui.DefineHandler.applyDefinition(DefineHandler.java:86) org.apache.myfaces.view.facelets.tag.ui.DecorateHandler.apply(DecorateHandler.java:248) org.apache.myfaces.view.facelets.impl.TemplateContextImpl$TemplateManagerImpl.apply(TemplateContextImpl.java:182) org.apache.myfaces.view.facelets.impl.TemplateContextImpl.includeDefinition(TemplateContextImpl.java:131) org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeDefinition(DefaultFaceletContext.java:439) org.apache.myfaces.view.facelets.tag.ui.InsertHandler.apply(InsertHandler.java:93) javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:58) org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate.apply(ComponentTagHandlerDelegate.java:291) javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:53) javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49) javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:58) org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate.apply(ComponentTagHandlerDelegate.java:291) javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:53) javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49) javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:58) org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate.apply(ComponentTagHandlerDelegate.java:291) javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:53) org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:57) org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:45) org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:354) org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:408) org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:386) org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:244) org.apache.myfaces.view.facelets.tag.ui.DecorateHandler.apply(DecorateHandler.java:202) javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49) javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:58) org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate.apply(ComponentTagHandlerDelegate.java:291) javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:53) javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49) javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:58) org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate.apply(ComponentTagHandlerDelegate.java:291) javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:53) javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49) org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:57) javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49) org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:45) org.apache.myfaces.view.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:151) org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage.buildView(FaceletViewDeclarationLanguage.java:435) org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:77) org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:241) javax.faces.webapp.FacesServlet.service(FacesServlet.java:199)
          Hide
          Philip Breau added a comment -

          http://java.net/jira/browse/JAVASERVERFACES-1849

          Bug in 2.1 Mojarra prevents the use of an attribute named 'rendered' . Fixed in 2.2. Following stack trace occurs:

          java.lang.IllegalArgumentException: argument type mismatch
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
          at
          sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
          at java.lang.reflect.Method.invoke(Method.java:597)
          at
          javax.faces.component.UIComponentBase$AttributesMap.put(UIComponentBase.java:2263)
          at
          javax.faces.component.UIComponentBase$AttributesMap.put(UIComponentBase.java:2147)
          at
          com.sun.faces.application.ApplicationImpl.pushDeclaredDefaultValuesToAttributesMap(ApplicationImpl.java:1048)
          at
          com.sun.faces.application.ApplicationImpl.createComponent(ApplicationImpl.java:1017)
          at
          org.jboss.weld.integration.webtier.jsf.ForwardingApplication.createComponent(ForwardingApplication.java:116)
          at
          javax.faces.application.ApplicationWrapper.createComponent(ApplicationWrapper.java:601)
          at
          com.sun.faces.facelets.tag.jsf.CompositeComponentTagHandler.createComponent(CompositeComponentTagHandler.java:160)
          at
          com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.createComponent(ComponentTagHandlerDelegateImpl.java:431)
          at
          com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:144)
          at

          Show
          Philip Breau added a comment - http://java.net/jira/browse/JAVASERVERFACES-1849 Bug in 2.1 Mojarra prevents the use of an attribute named 'rendered' . Fixed in 2.2. Following stack trace occurs: java.lang.IllegalArgumentException: argument type mismatch at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at javax.faces.component.UIComponentBase$AttributesMap.put(UIComponentBase.java:2263) at javax.faces.component.UIComponentBase$AttributesMap.put(UIComponentBase.java:2147) at com.sun.faces.application.ApplicationImpl.pushDeclaredDefaultValuesToAttributesMap(ApplicationImpl.java:1048) at com.sun.faces.application.ApplicationImpl.createComponent(ApplicationImpl.java:1017) at org.jboss.weld.integration.webtier.jsf.ForwardingApplication.createComponent(ForwardingApplication.java:116) at javax.faces.application.ApplicationWrapper.createComponent(ApplicationWrapper.java:601) at com.sun.faces.facelets.tag.jsf.CompositeComponentTagHandler.createComponent(CompositeComponentTagHandler.java:160) at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.createComponent(ComponentTagHandlerDelegateImpl.java:431) at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:144) at
          Hide
          Philip Breau added a comment -

          http://java.net/jira/browse/JAVASERVERFACES-2284

          Open bug in Mojarra 2.1.6 prevents passing params through composite components.

          Show
          Philip Breau added a comment - http://java.net/jira/browse/JAVASERVERFACES-2284 Open bug in Mojarra 2.1.6 prevents passing params through composite components.
          Hide
          Philip Breau added a comment -

          http://java.net/jira/browse/JAVASERVERFACES-2275

          Open bug in Mojarra 2.1.6 prevents component state persisting on composite children.

          Show
          Philip Breau added a comment - http://java.net/jira/browse/JAVASERVERFACES-2275 Open bug in Mojarra 2.1.6 prevents component state persisting on composite children.
          Hide
          Philip Breau added a comment -

          Open bug in Mojarra 2.1.6 prevents the use of attribute with required="true" inside ui:repeat components:

          http://java.net/jira/browse/JAVASERVERFACES-2078

          Show
          Philip Breau added a comment - Open bug in Mojarra 2.1.6 prevents the use of attribute with required="true" inside ui:repeat components: http://java.net/jira/browse/JAVASERVERFACES-2078
          Hide
          Philip Breau added a comment -

          Testing with MyFaces 2.1.6:

          Packaged composite components in a jar with a custom namespace appear to only work with the default resource method requiring the following:

          • use the <composite-library-name>icecc</composite-library-name> in icecc.taglib.xml
          • do not define the composite component with the <tag> and <source> elements, but let MyFaces locate the component with the default resource method

          When the <tag> is used in icecc.taglib.xml the following exception occurs:

          java.lang.NullPointerException
          org.apache.myfaces.view.facelets.tag.composite.CompositeComponentDefinitionTagHandler.apply(CompositeComponentDefinitionTagHandler.java:117)
          org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:57)
          org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:45)
          org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:354)
          org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:408)
          org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:369)
          org.apache.myfaces.view.facelets.tag.UserTagHandler.apply(UserTagHandler.java:124)
          javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49)
          javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:58)
          org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate.apply(ComponentTagHandlerDelegate.java:291)
          javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:53)
          javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49)
          org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:57)
          javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49)
          org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:45)
          org.apache.myfaces.view.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:151)
          org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage.buildView(FaceletViewDeclarationLanguage.java:435)
          org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:77)
          org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:241)
          javax.faces.webapp.FacesServlet.service(FacesServlet.java:199)

          Show
          Philip Breau added a comment - Testing with MyFaces 2.1.6: Packaged composite components in a jar with a custom namespace appear to only work with the default resource method requiring the following: use the <composite-library-name>icecc</composite-library-name> in icecc.taglib.xml do not define the composite component with the <tag> and <source> elements, but let MyFaces locate the component with the default resource method When the <tag> is used in icecc.taglib.xml the following exception occurs: java.lang.NullPointerException org.apache.myfaces.view.facelets.tag.composite.CompositeComponentDefinitionTagHandler.apply(CompositeComponentDefinitionTagHandler.java:117) org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:57) org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:45) org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:354) org.apache.myfaces.view.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:408) org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:369) org.apache.myfaces.view.facelets.tag.UserTagHandler.apply(UserTagHandler.java:124) javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49) javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:58) org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate.apply(ComponentTagHandlerDelegate.java:291) javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:53) javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49) org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:57) javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:49) org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:45) org.apache.myfaces.view.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:151) org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage.buildView(FaceletViewDeclarationLanguage.java:435) org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:77) org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:241) javax.faces.webapp.FacesServlet.service(FacesServlet.java:199)

            People

            • Assignee:
              Philip Breau
              Reporter:
              Philip Breau
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: