IBM Support

LI81899: MIGRATION: CHANGE $(REQUEST.BODY.*) TO $(REQUEST.PARSED_BODY.*) IN TARGET-URL OF INVOKE

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 API Connect migration utility (AMU) port-to-apigw command
    does not replace the $(request.body.*) with
    $(request.parsed_body.*) in the target url
    Steps to reproduce
    1- In API Connect version 5.0.x, create an API which uses the
    input of the body to create the query parameters for this
    invoke target url with $(request.body.*) such as:
    ===
      - invoke:
        cache-response: protocol
        cache-ttl: 900
        password: $(backend-password)
        stop-on-error:
        - ConnectionError
        target-url:
    $(backend-url)/test/rest/myService?UserId=$(request.body.userId)
    &PartId=$(request.body.partId)
        timeout: 60
        title: invoke
        username: $(backend-username)
        verb: POST
        version: 1.0.0
    =====
    2- Migrate the API to apigw using the AMU port-to-apigw (for
    example the emulation layer (invoke version 1.5.0))
    Result:
    The invoke becomes once the API is converted to a APIGW
    ====
      - invoke:
        cache-response: protocol
        cache-ttl: 900
        password: $(backend-password)
        stop-on-error:
        - ConnectionError
        target-url:
    $(backend-url)/test/rest/myService?UserId=$(request.body.userId)
    &PartId=$(request.body.partId)
        timeout: 60
        title: invoke
        username: $(backend-username)
        verb: POST
        version: 1.5.0
        comment:
        - 'INV17: Invoke policy set to ´invoke_1.5.0´, converting
    invoke to ´invoke_1.5.0´.
         For details, see:
    https://www.ibm.com/support/knowledgecenter/SSMNED_v10/com.ibm.a
    pic.porting.doc/porting_messages.html#INVOKE_WRAPPER_FOUND'
    ====
    When you call the API afterwards, you see that the call being
    made does not contain the value for the query parameters
    Dec 14 11:29:25 DataPowerDEV
    [api_gw_v10][0x88c00028][apigw][error] apigw(api_gw_v10):
    trans(223507)[request][10.136.241.61]
    gtid(042204115fd74c9400036913):
    The assembly stops on operation error. URL:
    https://<api-endpoint-hostname>m/test/rest/myService?UserId=&Par
    tId=, code: 400.
    

Local fix

  • Workaround
    Modify the target url manually to either be:
    $(backend-url)/test/rest/myService?UserId=$(request.parsed_body.
    userId)&PartId=$(request.parsed_body.partId)
    and you will get the expected result
    

Problem summary

  • Using $(request.body) in target-url in invoke results in usage
    of unparsed data
    

Problem conclusion

  • AMU will now convert $(request.body) to $(request.parsed_body)
    in target-url of invoke. Fix will go into AMU v10.0.1.2 and
    later
    

Temporary fix

Comments

APAR Information

  • APAR number

    LI81899

  • Reported component name

    API CONNECT ENT

  • Reported component ID

    5725Z2201

  • Reported release

    A0X

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2020-12-16

  • Closed date

    2021-03-06

  • Last modified date

    2021-03-06

  • 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

    API CONNECT ENT

  • Fixed component ID

    5725Z2201

Applicable component levels

  • RA0X PSY

       UP

[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSMNED","label":"IBM API Connect"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"A0X","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
29 September 2021