IBM Support

JR56905: Access control error during cart merge when MergeCartsAtAuthentication enabled

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 

APAR status

  • Closed as program error.

Error description

  • If you enabled <MergeCartsAtAuthentication enabled="true"/>" in
    wc-server.xml, you might notice that orders are not merged.
    
    The issue is caused by the business context in the command
    context.
    
    MigrateUserEntriesCmd calls the following commands:
    OrderItemMoveCmd->OrderCopyCmd->OrderItemUpdateCmd->
    DoInventoryCmd. The method clones a command context with the new
     user (registered user) and passes this cloned context to the
    commands. It works for the commands (controller or task
    commands), however, when it calls AbstractOrderFacadeClient to
    invoke component service, it would fail with a call stack like
    this:
    ... ...
        at
    com.ibm.commerce.foundation.client.facade.bod.AbstractBusinessOb
    jectDocumentFacadeClient.sendBusinessObjectDocument(AbstractBusi
    nessObjectDocumentFacadeClient.java:485)
        at
    com.ibm.commerce.order.facade.client.AbstractOrderFacadeClient.g
    etOrder(AbstractOrderFacadeClient.java:140)
        at
    com.ibm.commerce.order.facade.client.AbstractOrderFacadeClient.g
    etOrder(AbstractOrderFacadeClient.java:386)
        at
    com.ibm.commerce.inventory.commands.DoInventoryActionCmdImpl.com
    poseInventoryRequirement(DoInventoryActionCmdImpl.java:3050)
    .... ...
    
    The component service fails because the component service does
    not respect cloned command context, and it retrieves user Id
    from the active session, where the user is still the old user
    (guest user).
    

Local fix

Problem summary

  • USERS AFFECTED:
    WebSphere Commerce Version 7 and Version 8.
    
    PROBLEM ABSTRACT:
    Access control error during cart merge when
    MergeCartsAtAuthentication enabled
    
    BUSINESS IMPACT:
    Items in shopping cart are not merged when guest shopper logs in
     as registered shopper.
    
    RECOMMENDATION:
    

Problem conclusion

  • Set the registered user in command context instead of in cloned
    command context, so that it takes effect for services.
    

Temporary fix

Comments

APAR Information

  • APAR number

    JR56905

  • Reported component name

    WC BUS EDITION

  • Reported component ID

    5724I3800

  • Reported release

    700

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2016-10-28

  • Closed date

    2018-01-02

  • Last modified date

    2018-01-02

  • 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

    WC BUS EDITION

  • Fixed component ID

    5724I3800

Applicable component levels

[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSYSYL","label":"WebSphere Commerce Enterprise"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.0","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
02 January 2018