ICEfaces
  1. ICEfaces
  2. ICE-9866

New mobi:outputList, outputListItem, and outputListItems components

    Details

    • Type: New Feature New Feature
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 4.0.BETA, 4.0
    • Component/s: MOBI-Components
    • Labels:
      None
    • Environment:
      ICEfaces 4
    • Affects:
      Documentation (User Guide, Ref. Guide, etc.), Sample App./Tutorial

      Description

      mobi:outputList defines a grouping of unordered list items. The child component of this component must be outputListItem or outputListItems components.

      mobi:outputListItem is used within an outputList tag to group unordered list items.

      mobi:outputListItems is used within an outputList tag to group lists of items.

        Activity

        Hide
        Cruz Miraback added a comment -

        Test Results

        ICEfaces4 trunk revision# 40043

        mobi:outputList attributes
        No issues

        mobi:outputListItem attributes
        No issues

        mobi:outputListItems attributes
        1) first attribute doesn't function. The entire list is displayed regardless of what this attribute is set to.
        2) rows attribute doesn't function. The entire list is displayed regardless of what this attribute is set to.
        3) inset attribute doesn't function. Setting this to true does nothing. However, this attribute does work on outputList.
        4) style and styleClass attributes are not getting applied to the component. However, these attributes work on outputList and ouputListItem.
        5) rowIndex attribute doesn't seem to do anything and binding it to a bean value causes an exception:
        WARNING: queued exception
        java.lang.IllegalArgumentException
        at javax.faces.component.UIData.setValueExpression(UIData.java:804)
        at org.icefaces.mobi.component.outputlist.OutputListItemsBase.setValueExpression(OutputListItemsBase.java:330)
        at com.sun.faces.facelets.tag.jsf.ComponentRule$ValueExpressionMetadata.applyMetadata(ComponentRule.java:107)
        at com.sun.faces.facelets.tag.MetadataImpl.applyMetadata(MetadataImpl.java:81)
        at javax.faces.view.facelets.MetaTagHandler.setAttributes(MetaTagHandler.java:129)
        at javax.faces.view.facelets.DelegatingMetaTagHandler.setAttributes(DelegatingMetaTagHandler.java:102)
        at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.doNewComponentActions(ComponentTagHandlerDelegateImpl.java:412)
        at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:175)
        at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)
        at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:95)
        at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
        at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:190)
        at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)
        at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:95)
        at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
        at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:190)
        at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)
        at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:95)
        at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
        at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:190)
        at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)
        at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:95)
        at com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:93)
        at com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:87)
        at com.sun.faces.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:161)
        at com.sun.faces.application.view.FaceletViewHandlingStrategy.buildView(FaceletViewHandlingStrategy.java:980)
        at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:99)
        at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
        at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
        at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
        at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023)
        at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
        at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:1852)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
        at java.lang.Thread.run(Thread.java:722)

        Styling issues:
        1) The list has no styling at all unless it is nested inside an ACE component like dataTable or tabset.

        Show
        Cruz Miraback added a comment - Test Results ICEfaces4 trunk revision# 40043 mobi:outputList attributes No issues mobi:outputListItem attributes No issues mobi:outputListItems attributes 1) first attribute doesn't function. The entire list is displayed regardless of what this attribute is set to. 2) rows attribute doesn't function. The entire list is displayed regardless of what this attribute is set to. 3) inset attribute doesn't function. Setting this to true does nothing. However, this attribute does work on outputList. 4) style and styleClass attributes are not getting applied to the component. However, these attributes work on outputList and ouputListItem. 5) rowIndex attribute doesn't seem to do anything and binding it to a bean value causes an exception: WARNING: queued exception java.lang.IllegalArgumentException at javax.faces.component.UIData.setValueExpression(UIData.java:804) at org.icefaces.mobi.component.outputlist.OutputListItemsBase.setValueExpression(OutputListItemsBase.java:330) at com.sun.faces.facelets.tag.jsf.ComponentRule$ValueExpressionMetadata.applyMetadata(ComponentRule.java:107) at com.sun.faces.facelets.tag.MetadataImpl.applyMetadata(MetadataImpl.java:81) at javax.faces.view.facelets.MetaTagHandler.setAttributes(MetaTagHandler.java:129) at javax.faces.view.facelets.DelegatingMetaTagHandler.setAttributes(DelegatingMetaTagHandler.java:102) at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.doNewComponentActions(ComponentTagHandlerDelegateImpl.java:412) at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:175) at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120) at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:95) at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137) at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:190) at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120) at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:95) at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137) at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:190) at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120) at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:95) at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137) at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:190) at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120) at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:95) at com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:93) at com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:87) at com.sun.faces.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:161) at com.sun.faces.application.view.FaceletViewHandlingStrategy.buildView(FaceletViewHandlingStrategy.java:980) at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:99) at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101) at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:647) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589) at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:1852) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:722) Styling issues: 1) The list has no styling at all unless it is nested inside an ACE component like dataTable or tabset.
        Show
        Cruz Miraback added a comment - Test application is located at: http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Manual/outputList
        Hide
        Arturo Zambrano added a comment -

        r40097: fixed styling issues.

        Show
        Arturo Zambrano added a comment - r40097: fixed styling issues.
        Hide
        Arturo Zambrano added a comment -

        r40099: disinherited first, rows, rowIndex and varStatus, as they were inherited from UISeries and aren't just supported by the component.

        Show
        Arturo Zambrano added a comment - r40099: disinherited first, rows, rowIndex and varStatus, as they were inherited from UISeries and aren't just supported by the component.
        Hide
        Arturo Zambrano added a comment -

        style and styleClass are being applied correctly to to outputListItems. There's an error in the test app, the dropdown menus are referencing the wrong bean, it should be itemsAttributeBean.

        Show
        Arturo Zambrano added a comment - style and styleClass are being applied correctly to to outputListItems. There's an error in the test app, the dropdown menus are referencing the wrong bean, it should be itemsAttributeBean.
        Hide
        Arturo Zambrano added a comment -

        r40100 removed inset attribute from mobi:outputListItems as it's only meant to work with mobi:outputList.

        Show
        Arturo Zambrano added a comment - r40100 removed inset attribute from mobi:outputListItems as it's only meant to work with mobi:outputList.
        Hide
        Cruz Miraback added a comment - - edited

        ICEfaces4 trunk revision# 40111

        • Confirmed styling issues are fixed.
        • Removed first, rows, rowIndex, and varStatus attributes from QA test application.
        • Removed inset attribute from mobi:outputListItems test page.
        • Confirmed that a typo in the test app was the cause of the style/styleClass "issues". This has been updated.

        All previous reported issues have been resolved, but a new issue has been found.

        6) Changing the style or styleClass attributes on mobi:outputListItems dynamically causes the first list item to be replaced by the last list item. The last list item is present in both the first and last positions of the list and the original first item seems to have been removed from the list.
        To reproduce:

        Show
        Cruz Miraback added a comment - - edited ICEfaces4 trunk revision# 40111 Confirmed styling issues are fixed. Removed first, rows, rowIndex, and varStatus attributes from QA test application. Removed inset attribute from mobi:outputListItems test page. Confirmed that a typo in the test app was the cause of the style/styleClass "issues". This has been updated. All previous reported issues have been resolved, but a new issue has been found. 6) Changing the style or styleClass attributes on mobi:outputListItems dynamically causes the first list item to be replaced by the last list item. The last list item is present in both the first and last positions of the list and the original first item seems to have been removed from the list. To reproduce: Build / deploy test app located at: http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Manual/outputList Navigate to outputList/outputListItems.jsf Click rendered checkbox Change one of the style or styleClass values
        Hide
        Ken Fyten added a comment -

        Last issue spun off to new JIRA ICE-9897.

        Resolved.

        Show
        Ken Fyten added a comment - Last issue spun off to new JIRA ICE-9897 . Resolved.

          People

          • Assignee:
            Arturo Zambrano
            Reporter:
            Ken Fyten
          • Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: