IBM Support

JR60920: Invalid error when values for mandatory parameters are missing from a /productview API call.

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

  • The productview/byCategory search REST API allows you to
    retrieve information on all the products under a particular
    category. For example, if you want to retrieve the products
    under category with catgroup_id 10001, you would execute a
    request like so: ".../productview/byCategory/10001?..."
    
    However, if you don't specify a category, it will be incorrectly
     processed as if you executed a productview/byPartNumber
    request. This can be confusing as you will get an error about
    incorrect search profile being used, even though the issue is
    really with the incorrect handling of the request:
    
    {
    	"errors": [
    		{
    			"errorKey": "ERR_INVALID_ENUMERATION",
    			"errorParameters":
    "profileName,IBM_BreadCrumbByCategoryUniqueId,[IBM_findProductBy
    PartNumber_Details, IBM_findProductByPartNumber_Summary]",
    			"errorMessage": "CWXFR0229E: Parameter \"profileName\" is
    invalid with value \"IBM_BreadCrumbByCategoryUniqueId\".
    Potential valid value(s) : [IBM_findProductByPartNumber_Details,
     IBM_findProductByPartNumber_Summary]. ",
    			"errorCode": "CWXFR0229E",
    			"errorLevel": "SEVERE"
    		},
    		{
    			"errorKey": "_ERR_GENERIC",
    			"errorParameters": "[Return code : Bad Request, Level :
    SEVERE, Code : CWXFR0229E, Key : ERR_INVALID_ENUMERATION,
    Message : CWXFR0229E: Parameter \"profileName\" is invalid with
    value \"IBM_BreadCrumbByCategoryUniqueId\". Potential valid
    value(s) : [IBM_findProductByPartNumber_Details,
    IBM_findProductByPartNumber_Summary]. , Parameters :
    [profileName, IBM_BreadCrumbByCategoryUniqueId,
    [IBM_findProductByPartNumber_Details,
    IBM_findProductByPartNumber_Summary]], Cause :
    java.lang.IllegalArgumentException: CWXFR0229E: Parameter
    \"profileName\" is invalid with value
    \"IBM_BreadCrumbByCategoryUniqueId\". Potential valid value(s) :
     [IBM_findProductByPartNumber_Details,
    IBM_findProductByPartNumber_Summary]. ]",
    			"errorCode": "_ERR_GENERIC",
    			"errorLevel": "SEVERE"
    		}
    	]
    }
    

Local fix

  • Scan all the code where such calls are made, and ensure that all
     path parameters are set.
    

Problem summary

  • USERS AFFECTED:
    All.
    
    PROBLEM ABSTRACT:
    Invalid error when values for mandatory parameters are missing
    from a /productview API call.
    
    BUSINESS IMPACT:
    Misleading errors in the logs.
    
    RECOMMENDATION:
    

Problem conclusion

  • 1. Return 404 for all productview methods which expect a path
    parameter when it is not set.
    2. Deprecated the /productview/{partNumber} method
    3. Created new end point to handle search by part number, i.e.
    productview/byPartNumber/{partNumber}
    

Temporary fix

Comments

APAR Information

  • APAR number

    JR60920

  • Reported component name

    WC BUS EDITION

  • Reported component ID

    5724I3800

  • Reported release

    900

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2019-04-03

  • Closed date

    2019-05-24

  • Last modified date

    2019-05-24

  • 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":"9.0","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
24 May 2019