ICEfaces
  1. ICEfaces
  2. ICE-5825

Several remaining xhtml compliance issues with compat components

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.0-Alpha3
    • Fix Version/s: 2.0.0
    • Component/s: ICE-Components
    • Labels:
      None
    • Environment:
      ICEfaces 2 JSF 2
    • Affects:
      Documentation (User Guide, Ref. Guide, etc.), Sample App./Tutorial, Compatibility/Configuration
    • Workaround Exists:
      Yes
    • Workaround Description:
      Hide
      Add the f:view tag with the following attribute to ensure that the content type is text/html:

      <f:view contentType="text/html">
      Show
      Add the f:view tag with the following attribute to ensure that the content type is text/html: <f:view contentType="text/html">

      Description

      Up to Alpha 3 release, the ICEfaces response writer (DOMResponseWriter) was returned hardcoded values for:

      content type: text/html
      encoding: UTF-8

      While this covers a wide range of use cases, it's not adaptable to change by application developers. Changes to the DOMResponseWriter in ICE-5664 - to provide better support for determining the proper content type and encoding - makes for a more compatible ICEfaces experience.

      However, now that the values are no longer hard coded, browsers can potentially handle the markup differently based on what they accept and prefer. For example Chrome and Safari currently prefer "application/xhtml+xml" over "text/html":

          Accept: application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5

      whereas Firefox prefers "text/html"

          Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

      This is all fine (and better explained here - http://www.w3.org/TR/xhtml-media-types/) except that if the content type "application/xhtml-xml" is returned, then the default namespace must also be included or the page will not render correctly:

      <html xmlns="http://www.w3.org/1999/xhtml">

      So we need to ensure that we document this requirement and that our example applications are properly adjusted to ensure the default namespace is included in our page markup.

        Activity

        Hide
        Deryk Sinotte added a comment -

        Assigning to Ken for re-assignment.

        Show
        Deryk Sinotte added a comment - Assigning to Ken for re-assignment.
        Hide
        Deryk Sinotte added a comment -

        As an example, one of the component related changes that I didn't make but alluded to in the notes was to the SelectInputDateRenderer. Similar to the adjustments we made for the DOMUtils for entities:

        writeCell(domContext, facesContext, writer, inputComponent, " ",

        becomes

        writeCell(domContext, facesContext, writer, inputComponent, " ",

        Show
        Deryk Sinotte added a comment - As an example, one of the component related changes that I didn't make but alluded to in the notes was to the SelectInputDateRenderer. Similar to the adjustments we made for the DOMUtils for entities: writeCell(domContext, facesContext, writer, inputComponent, " ", becomes writeCell(domContext, facesContext, writer, inputComponent, " ",
        Hide
        yip.ng added a comment -

        Revision: 23190


        Modified : /icefaces2/trunk/icefaces/compat/components/src/main/java/com/icesoft/faces/component/ext/renderkit/TableRenderer.java
        Modified : /icefaces2/trunk/icefaces/compat/components/src/main/java/com/icesoft/faces/component/outputprogress/OutputProgress.java
        Modified : /icefaces2/trunk/icefaces/compat/components/src/main/java/com/icesoft/faces/component/outputprogress/OutputProgressRenderer.java
        Modified : /icefaces2/trunk/icefaces/compat/components/src/main/java/com/icesoft/faces/component/paneldivider/PanelDividerRenderer.java
        Modified : /icefaces2/trunk/icefaces/compat/components/src/main/java/com/icesoft/faces/component/selectinputdate/SelectInputDateRenderer.java

        Show
        yip.ng added a comment - Revision: 23190 Modified : /icefaces2/trunk/icefaces/compat/components/src/main/java/com/icesoft/faces/component/ext/renderkit/TableRenderer.java Modified : /icefaces2/trunk/icefaces/compat/components/src/main/java/com/icesoft/faces/component/outputprogress/OutputProgress.java Modified : /icefaces2/trunk/icefaces/compat/components/src/main/java/com/icesoft/faces/component/outputprogress/OutputProgressRenderer.java Modified : /icefaces2/trunk/icefaces/compat/components/src/main/java/com/icesoft/faces/component/paneldivider/PanelDividerRenderer.java Modified : /icefaces2/trunk/icefaces/compat/components/src/main/java/com/icesoft/faces/component/selectinputdate/SelectInputDateRenderer.java
        Hide
        Ken Fyten added a comment -

        Re-open to also include all the sample apps.

        Show
        Ken Fyten added a comment - Re-open to also include all the sample apps.
        Hide
        yip.ng added a comment -

        Revision: 23202


        Modified : /icefaces2/trunk/icefaces/compat/component-metadata/src/main/java/com/icesoft/metadata/test/DefaultValueTest.java
        Modified : /icefaces2/trunk/icefaces/compat/components/src/main/java/com/icesoft/faces/component/paneltabset/PanelTabSetRenderer.java
        Modified : /icefaces2/trunk/icefaces/compat/core/src/main/java/com/icesoft/faces/context/effects/JavascriptContext.java
        Modified : /icefaces2/trunk/icefaces/compat/core/src/main/java/com/icesoft/jasper/Constants.java
        Modified : /icefaces2/trunk/icefaces/compat/samples/auctionMonitor/src/com/icesoft/applications/faces/auctionMonitor/beans/UserBean.java
        Modified : /icefaces2/trunk/icefaces/compat/samples/auctionMonitor/web/WEB-INF/faces-config.xml
        Modified : /icefaces2/trunk/icefaces/compat/samples/auctionMonitor/web/auctionMonitor.html
        Modified : /icefaces2/trunk/icefaces/compat/samples/compat-basic/web/icefaces-subtree.xhtml
        Modified : /icefaces2/trunk/icefaces/compat/samples/compat-basic/web/icefaces.xhtml
        Modified : /icefaces2/trunk/icefaces/compat/samples/compat-basic/web/nonicefaces.xhtml

        Show
        yip.ng added a comment - Revision: 23202 Modified : /icefaces2/trunk/icefaces/compat/component-metadata/src/main/java/com/icesoft/metadata/test/DefaultValueTest.java Modified : /icefaces2/trunk/icefaces/compat/components/src/main/java/com/icesoft/faces/component/paneltabset/PanelTabSetRenderer.java Modified : /icefaces2/trunk/icefaces/compat/core/src/main/java/com/icesoft/faces/context/effects/JavascriptContext.java Modified : /icefaces2/trunk/icefaces/compat/core/src/main/java/com/icesoft/jasper/Constants.java Modified : /icefaces2/trunk/icefaces/compat/samples/auctionMonitor/src/com/icesoft/applications/faces/auctionMonitor/beans/UserBean.java Modified : /icefaces2/trunk/icefaces/compat/samples/auctionMonitor/web/WEB-INF/faces-config.xml Modified : /icefaces2/trunk/icefaces/compat/samples/auctionMonitor/web/auctionMonitor.html Modified : /icefaces2/trunk/icefaces/compat/samples/compat-basic/web/icefaces-subtree.xhtml Modified : /icefaces2/trunk/icefaces/compat/samples/compat-basic/web/icefaces.xhtml Modified : /icefaces2/trunk/icefaces/compat/samples/compat-basic/web/nonicefaces.xhtml

          People

          • Assignee:
            yip.ng
            Reporter:
            Deryk Sinotte
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: