IBM Support

PK58623: CANNOT SAVE CDATA IN HTML COMPONENT

 

APAR status

  • Closed as program error.

Error description

  • Cannot save CDATA in HTML Component
    
    
    JavaScript with CDATA in an HTML Component causes content to
    disappear when saved and an exception is thrown. This is because
    we save the html component content as CDATA. When the content
    contains CDATA, we get nested CDATA tags, which the parser can't
    parse. Solution is to break up any CDATA close tags into
    separate containing CDATA elements
    

Local fix

  • Save as text component instead.
    

Problem summary

  • Detailed Problem Description:
    When you save an HTML component that contains one or more CDATA
    elements in the content, the save operation appears to complete
    successfully.
    However, when you later edit or view the HTML component, its
    content is empty.
    
    The following errors appear in SystemOut.log:
    [12/6/07 15:35:06:846 CST] 0000005a TransformerUt W
    JCR_REPOSITORY_EXCEPTION_CAUGHT_1
    [12/6/07 15:35:06:851 CST] 0000005a TransformerUt W
    java.io.IOException: Parse error at line 30
    (org.xml.sax.SAXParseException: The element type "m_text" must
    be terminated by the matching end-tag "</m_text>".)
    
    A CDATA element is a section of text within XML or SGML that is
    to be treated by the parser as only character data, not as
    markup.
    
    CDATA element syntax is as follows: a CDATA element starts with
    the string "<![CDATA[" and ends with the next occurrence of the
    string "]]>".
    Note that this means that a CDATA element cannot contain the
    string "]]>", which means that CDATA elements may not be nested.
    
    
    Problem Analysis:
    When saving HTML components, IBM Workplace Web Content
    Management encodes the entire content of the component as CDATA.
    If the component content itself contains CDATA elements, this
    results in nested CDATA elements, which results in invalid xml
    (as described above).
    The solution to nesting CDATA elements is to break the inner end
    tag "]]>" into two segments across two separate outer CDATA
    elements.
    

Problem conclusion

Temporary fix

Comments

APAR Information

  • APAR number

    PK58623

  • Reported component name

    WRKPLC WEB CON

  • Reported component ID

    5724I2900

  • Reported release

    60E

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2007-12-23

  • Closed date

    2008-03-05

  • Last modified date

    2008-03-16

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    WRKPLC WEB CON

  • Fixed component ID

    5724I2900

Applicable component levels

  • R600 PSY

       UP

[{"Business Unit":{"code":null,"label":null},"Product":{"code":"SUPPORT","label":"IBM Worldwide Support"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"6.0.1.1","Edition":"","Line of Business":{"code":null,"label":null}}]

Document Information

Modified date:
10 September 2020