ICEfaces-EE
  1. ICEfaces-EE
  2. IPCK-245

Make UIInstruction tags be their own components

    Details

    • Type: New Feature New Feature
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: EE-2.0.0.Alpha1
    • Fix Version/s: EE-2.0.0.Beta1
    • Component/s: Core Extensions
    • Labels:
      None
    • Environment:
      ICEfaces 2, both compat and regular
    • Affects:
      Documentation (User Guide, Ref. Guide, etc.), Compatibility/Configuration

      Description

      In regular JSF/Facelets, when an html tag, that is not a UIComponent tag, is encountered, it's encapsulated as a UIInstructions component, which affects the component tree hierarchy in a way that's not entirely obvious. Let's say you have a panelGrid, with an html tag as a child, and then inside that an actual component.

      <h:panelGrid columns="1">
          <center>
              <h:inputText .../>
          </center>
      </h:panelGrid>

      You might think that the <center> tag will be a component which is the only child of the <h:panelGrid>, and the parent of the <h:inputText>, but what will instead happen is that <h:panelGrid> will have 3 children: a UIInstructions child corresponding to the opening <center> tag, the <h:inputText>, and a UIInstructions child corresponding to the closing </center> tag.

      The h:panelGrid component will then render each if it's children into a separate <TD> tag, which will confuse the browser, since the starting <center> will be in a separate <TD> then the ending </center>. This is illustrated here: http://jira.icefaces.org/browse/ICE-5735

      In ICEfaces 1.8.x and before, we had code that specifically made the HTML tags become like components, instead of becoming UIInstructions, so that they would behave as expected. This jira is for replicating that functionality into ICEfaces 2.

      This is a jira for some of that previous work: http://jira.icefaces.org/browse/ICE-1092

      These are the relevant classes:

      com.icesoft.faces.facelets.UIXhtmlTagLibrary
      com.icesoft.faces.facelets.UIXhtmlTagDecorator
      com.icesoft.faces.facelets.UIXhtmlComponentHandler
      com.icesoft.faces.component.UIXhtmlComponent

        Issue Links

          Activity

          Hide
          Ted Goddard added a comment -

          Checked in to icefaces-ee.

          Show
          Ted Goddard added a comment - Checked in to icefaces-ee.
          Hide
          Mandeep Hayher added a comment -

          The test case is failing on ICEfaces2 trunk revision# 23981.

          NOTE: The test case was seen passing around Icefaces # 23929

          Show
          Mandeep Hayher added a comment - The test case is failing on ICEfaces2 trunk revision# 23981. NOTE: The test case was seen passing around Icefaces # 23929
          Hide
          Ted Goddard added a comment -

          Tested by adding test.xhtml and the FACELETS_DECORATORS to a sample application and the "1" was displayed as expected.

          Show
          Ted Goddard added a comment - Tested by adding test.xhtml and the FACELETS_DECORATORS to a sample application and the "1" was displayed as expected.
          Hide
          Ted Goddard added a comment -

          The feature was working in my test, could you verify the test case?

          Show
          Ted Goddard added a comment - The feature was working in my test, could you verify the test case?
          Hide
          Mandeep Hayher added a comment -

          Icefaces-ee2 revision# 26294
          Icefaces2 revision# 23983
          Server: Tomcat6
          Browser: FF3.6, IE7 & googlechrome8

          Application tested successfully.

          Show
          Mandeep Hayher added a comment - Icefaces-ee2 revision# 26294 Icefaces2 revision# 23983 Server: Tomcat6 Browser: FF3.6, IE7 & googlechrome8 Application tested successfully.

            People

            • Assignee:
              Ken Fyten
              Reporter:
              Mark Collette
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: