IBM Support

PI15289: ISSUE WITH VALIDATION OF STRINGS WITH ESCAPED COMMAS

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • A string might contain backslash character(s). Like
    bindDN="cn=John\,Doe,ou=IBM". Here, a backslash character in
    front of a comma character is an escape character of the comma.
    On WebSphere Application Server full profile, the string
    is passed to the code as it is. Therefore, the code gets the
    value of bindDN as "cn=John\,Doe,ou=IBM".
    
    For Liberty profile, the backslash is dropped and the code gets
    "cn=John,Doe,ou=IBM" which is not valid.
    
    And if it is escaped again like "cn=John\\,Doe,ou=IBM",
    It gets an error as:
    
    probeid = processBundleConfig.
    bundle/version/pid=com.ibm.ws.security.registry.ldap/1.0.1.cl012
    0131010-
    2115/com.ibm.ws.security.registry.ldap.config-ldap.
    Message=Cardinality
    violation: "cn=Dohn\,Doe,ou=IBM" has 3 value(s) but must have
    between 1
    and 1 value(s).
    Stack Dump = java.lang.IllegalArgumentException: Cardinality
    violation:
    "cn=Dohn\,Doe,ou=IBM" has 3 value(s) but must have between 1
    and 1
    value(s).
    at
    com.ibm.ws.config.internal.xml.ConfigEvaluator.processString(Con
    figEvalu
    ator.java:663)
    at
    com.ibm.ws.config.internal.xml.ConfigEvaluator.convertToSingleVa
    lue(Conf
    igEvaluator.java:373)
    at
    com.ibm.ws.config.internal.xml.ConfigEvaluator.evaluateMetaType(
    ConfigEv
    aluator.java:292)
    at
    com.ibm.ws.config.internal.xml.ConfigEvaluator.evaluateMetaTypeA
    ttribute
    (ConfigEvaluator.java:207)
    at
    com.ibm.ws.config.internal.xml.ConfigEvaluator.evaluate(ConfigEv
    aluator.
    java:133)
    at
    com.ibm.ws.config.internal.xml.XMLBundleProcessor.updateConfigur
    ation(XM
    LBundleProcessor.java:1461)
    at
    com.ibm.ws.config.internal.xml.XMLBundleProcessor.processBundleC
    onfig(XM
    LBundleProcessor.java:409)
    at
    com.ibm.ws.config.internal.WSConfigActivator.bundleChanged(WSCon
    figActiv
    ator.java:317)
    at
    org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispa
    tchEvent
    (BundleContextImpl.java:847)
    at
    org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(E
    ventMana
    ger.java:230)
    at
    org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventS
    ynchrono
    us(ListenerQueue.java:148)
    

Local fix

  • N/A
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  All users of IBM WebSphere Application      *
    *                  Server Liberty Profile                      *
    ****************************************************************
    * PROBLEM DESCRIPTION: The server fails when validating        *
    *                      configuration elements containing       *
    *                      escaped commas.                         *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    A string in the server configuration may contain backslash
    character(s), for example: "bindDN="cn=John\,Doe,ou=IBM". The
    server should interpret the backslash character in
    front of the comma character as an escape character of comma.
    Instead, the server unexpectedly removes the backslash and
    interprets the string as "cn=John,Doe,ou=IBM".  Further, if
    the string is escaped again, like "cn=John\\,Doe,ou=IBM", the
    server misinterprets the string and fails with an exception
    like the following.
    probeid = processBundleConfig.
    bundle/version/pid=com.ibm.ws.security.registry.ldap/1.0.1.cl012
    0131010-
    2115/com.ibm.ws.security.registry.ldap.config-ldap.
    Message=Cardinality
    violation: "cn=Dohn\,Doe,ou=IBM" has 3 value(s) but must have
    between 1
    and 1 value(s).
    Stack Dump = java.lang.IllegalArgumentException: Cardinality
    violation:
    "cn=Dohn\,Doe,ou=IBM" has 3 value(s) but must have between 1
    and 1
    value(s).
    at
    com.ibm.ws.config.internal.xml.ConfigEvaluator.processString(Con
    figEvalu
    ator.java:663)
    at
    com.ibm.ws.config.internal.xml.ConfigEvaluator.convertToSingleVa
    lue(Conf
    igEvaluator.java:373)
    at
    com.ibm.ws.config.internal.xml.ConfigEvaluator.evaluateMetaType(
    ConfigEv
    aluator.java:292)
    at
    com.ibm.ws.config.internal.xml.ConfigEvaluator.evaluateMetaTypeA
    ttribute
    (ConfigEvaluator.java:207)
    at
    com.ibm.ws.config.internal.xml.ConfigEvaluator.evaluate(ConfigEv
    aluator.
    java:133)
    at
    com.ibm.ws.config.internal.xml.XMLBundleProcessor.updateConfigur
    ation(XM
    LBundleProcessor.java:1461)
    at
    com.ibm.ws.config.internal.xml.XMLBundleProcessor.processBundleC
    onfig(XM
    LBundleProcessor.java:409)
    at
    com.ibm.ws.config.internal.WSConfigActivator.bundleChanged(WSCon
    figActiv
    ator.java:317)
    at
    org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispa
    tchEvent
    (BundleContextImpl.java:847)
    at
    org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(E
    ventMana
    ger.java:230)
    at
    org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventS
    ynchrono
    us(ListenerQueue.java:148)
    

Problem conclusion

  • Apply APAR PI15289 to update the application server to
    correctly interpret escaped commas within the
    server configuration.
    
    The fix for this APAR is currently targeted for inclusion in
    fix pack 8.5.5.3. Please refer to the Recommended Updates page
    for delivery information:
    http://www.ibm.com/support/docview.wss?rs=180&uid=swg27004980
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI15289

  • Reported component name

    LIBERTY PROFILE

  • Reported component ID

    5724J0814

  • Reported release

    850

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2014-04-04

  • Closed date

    2014-05-23

  • Last modified date

    2014-05-23

  • 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

    LIBERTY PROFILE

  • Fixed component ID

    5724J0814

Applicable component levels

  • R850 PSY

       UP

[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSEQTP","label":"WebSphere Application Server"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"850","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
28 April 2022