IBM Support

PM19496: SINGLE QUOTE CHARACTERS IN XPATH QUERY TERMS ARE NOT ESCAPED

 

APAR status

  • Closed as program error.

Error description

  • When attempting to access content in the authoring portlet, the
    authoring portlet renders incorrectly.  The left-hand
    navigation
    is rendered a second time inside the right-hand pane where
    content to be selected should be shown.  There is no error
    displayed to the user.
    The following error is seen in the SystemOut.log:
      ᆳ7/21/10 8:33:46:158 EDT    00000043 AbstractQuery E
    com.ibm.icm.j
    cr.query.AbstractQueryImpl QueryImpl
    com.ibm.icm.ci.query.CDMQue
    rySyntaxException: QRY0552E: Syntax of query string is
    incorrect
    .  Parsing error at position 313. Detail: Error: could not
    match
    input.
    com.ibm.icm.ci.query.CDMQuerySyntaxException: QRY0552E: Syntax
    o
    f query string is incorrect.  Parsing error at position 313.
    Det
    ail: Error: could not match input.
    at com.ibm.icm.ci.query.impl.xpath.JCRQXPathParser.yylex
    (JCRQXPathParser.java:1031)
    at com.ibm.icm.ci.query.impl.xpath.JCRQXPathParser.yypar
    se(JCRQXPathParser.java:1099)
    at com.ibm.icm.ci.query.impl.xpath.JCRQXPathParser.parse
    (JCRQXPathParser.java:1005)
    at com.ibm.icm.ci.query.impl.JCRQXPathProcessor.process(
    JCRQXPathProcessor.java:52)
    at com.ibm.icm.ci.query.impl.QueryProcessor.generateSql(
    QueryProcessor.java:183)
    at com.ibm.icm.ci.query.impl.QueryProcessor.validate(Que
    ryProcessor.java:156)
    at com.ibm.icm.ci.query.impl.QueryService.validate(Query
    Service.java:184)
    at com.ibm.icm.jcr.query.AbstractQueryImpl.validate(Abst
    ractQueryImpl.java:112)
    at com.ibm.icm.jcr.query.QueryImpl.<init>(QueryImpl.java
    :74)
    at com.ibm.icm.jcr.query.QueryManagerImpl.createQueryWit
    hOptions(QueryManagerImpl.java:74)
    at com.ibm.workplace.wcm.services.query.QueryServiceImpl
    .executeXPathQuery(QueryServiceImpl.java:615)
    at com.ibm.workplace.wcm.services.query.QueryServiceImpl
    .executeMultipleResults(QueryServiceImpl.java:477)
    at com.ibm.workplace.wcm.services.query.QueryServiceImpl
    .executeQuery(QueryServiceImpl.java:356)
    at com.ibm.workplace.wcm.app.ui.portlet.widget.browser.m
    odel.query.BaseQuery.execute(BaseQuery.java:163)
    at com.ibm.workplace.wcm.app.ui.portlet.widget.browser.m
    odel.core.QueryBrowserModel.getTableChildren(QueryBrowserModel
    .j
    ava:711)
    at com.ibm.workplace.wcm.app.ui.portlet.widget.browser.m
    odel.node.AbstractRepositoryNode
    .getTableChildren(AbstractReposi
    toryNode.java:270)
    ....
    .
    The positin where the syntax error occurs may change, depending
    on the where an uescaped single-quote character appears in the
    query.
    

Local fix

  • N/A
    

Problem summary

  • Problem Summary:
    Apostrophe in DN results in CDMQuerySyntaxException: QRY0552E:
    Syntax of query string is incorrect.
    
    Detailed Problem Description:
    Apostrophe in DN results in CDMQuerySyntaxException: QRY0552E:
    Syntax of query string is incorrect.  The following errors are
    logged:
     [7/28/10 17:07:42:754 EDT] 00000041 AbstractQuery E
      com.ibm.icm.jcr.query.AbstractQueryImpl QueryImpl
    com.ibm.icm.ci.
      query.CDMQuerySyntaxException: QRY0552E: Syntax of query
    string
      is incorrect.  Parsing error at position 267. Detail: Error:
      could not match input.
        com.ibm.icm.ci.query.CDMQuerySyntaxException:
        QRY0552E: Syntax of query string is incorrect.
        Parsing error at position 267. Detail: Error:
        could not match input.
     at com.ibm.icm.ci.query.impl.xpath.JCRQXPathParser.
        yylex(JCRQXPathParser.java:1031) . .
     [7/28/10 17:07:42:820 EDT] 00000041 QueryServiceI W   Execution
    of
      query [//element(*, ibmcontentwcm:webFolder)[@jcr:uuid =
      '66dd4e804bf347edbe76fe3b4324e145']/element(*,. . .
     [7/28/10 17:07:42:857 EDT] 00000041 WRepositoryBr W   <Null
    Message>
                                     java.lang.NullPointerException
     at com.ibm.workplace.wcm.services.query.QueryServiceImpl.
        executeQuery(QueryServiceImpl.java:360)
     at com.ibm.workplace.wcm.app.ui.portlet.widget.browser.model.
        query.BaseQuery.execute(BaseQuery.java:163)
    

Problem conclusion

  • Problem Analysis:
    In the log statements in the 'Detailed Problem Description' you
    can see test id's the Apostrophe is not escaped.
    
    Problem Solution:
    Updated the code to ensure Apostrophes in the DNs are properly
    escaped when forming the xpath queries.
    
    Affected Users:
    All users .
    

Temporary fix

Comments

APAR Information

  • APAR number

    PM19496

  • Reported component name

    LOTUS WEB CONT

  • Reported component ID

    5724I2900

  • Reported release

    615

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2010-07-29

  • Closed date

    2010-08-09

  • Last modified date

    2010-08-09

  • 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

    LOTUS WEB CONT

  • Fixed component ID

    5724I2900

Applicable component levels

  • R61A PSY

       UP

  • R61B PSY

       UP

  • R61C PSY

       UP

  • R610 PSY

       UP

[{"Business Unit":{"code":"BU051","label":"N\/A"},"Product":{"code":"SUPPORT","label":"IBM Web Content Manager"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"6.1.5","Line of Business":{"code":"LOB33","label":"N\/A"}}]

Document Information

Modified date:
21 December 2021