Version 2



    Impact study.




    GateIn Portal has some markups not compliant with W3C standards.


    It has been identified some areas:

    • Encoding of "&" characters in URLs.
    • Use of custom attributes for portal navigation portlets.
    • ID markup elements starting with numbers.
    • Use of legacy html attributes not compliant with  XHTML 1.0 Strict type document.
    • Other minor markups issues, not affecting in the functional behaviour of GateIn Portal, but not passing W3C validation.


    These issues can be tested using W3C official tool:


    Proposed Solution


    To make W3C compatible, we are proposing following fixes for identified areas:


    Encoding of "&" characters in URLs


    This fix can have big impact with legacy applications, WSRP integration or PortletBridge components.

    Solution proposed:

    • Define a global configuration property (i.e. gatein/ to enable/disable encoding of URLs.
    • If feature enabled, make sure that PortletURL and ContainerURL objects used in GateIn Portal are encoded (i.e. change toString() with write(out, escapeXML) invocations).
    • If feature disabled, behaviour should remain similar to previous one for backward compatibility.


    Use of custom attributes


    Solution proposed:

    • Change the use of custom attributes for hidden fields and adapting JavaScript layer involved.


    ID markup elements starting with numbers


    Some UI components as UIPortlet can have UUID IDs starting with number that are propagated into html markup.

    Solution proposed:

    • Add a prefix for IDs.


    Use of legacy html attributes


    Some legacy html elements (i.e. target="_blank") are not compatible with XHTML 1.0 Strict.

    Solution proposed:

    • Most of elements identified can be fixed using JavaScript.