IBM Support

PH34543: Swagger UI does not display input fields when the operation ID contains forward slashes.

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as unreproducible in next release.

Error description

  • When the API toolkit Swagger UI "Try it out!" function is used
    to test an API the "request body" portion the the defined fields
    that can be updated in a PUT operation should be displayed.
    However the expected fields are missing.
    The following message is displayed in the GUI for a PUT
    operation:
    
    <span class="strong">putDATA~1<operation_ID>~1<method>_response_
    200 is not defined!</span
    
    where ~1 represents forward slash characters ( / ) in the path.
    

Local fix

  • Rebuild the archive file without forward slash ( / ) characters
    in the operation IDs.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED: All users of z/OS Connect EE V3.0 API        *
    *                 toolkit.                                     *
    ****************************************************************
    * PROBLEM DESCRIPTION: Swagger UI 2.x embedded in the z/OS     *
    *                      Connect EE API toolkit does not display *
    *                      input fields for the request body when  *
    *                      the respective operation ID contains    *
    *                      forward slashes.                        *
    ****************************************************************
    Swagger UI 2.x embedded in the z/OS Connect EE API toolkit is
    not able to resolve the request and response body definitions
    for an operation when the operation ID contains one or more
    forward slashes (e.g., getCustomer/a/b/c). This causes the
    following errors in Swagger UI:
    1) The text "<span class="strong">getCustomer~1a~1b~1c_response_
    200 is not defined!</span>" appears in the Response Class
    section(s) of the operation instead of the response body model
    and example response.
    2) Input fields for the request body are not displayed in the
    Parameters section of the operation.
    

Problem conclusion

Temporary fix

Comments

  • The API toolkit uses operation IDs to form unique names for
    request and response body definitions when generating Open API
    documentation. Therefore, operation IDs containing forward slash
    / or tilde ~ characters will result in $ref directives where
    the characters / and ~ are escaped as ~1 and ~0 in the name of
    the request or response body definition being referenced.
    The use of these escapes in $ref directives is required by the
    Open API specification:
    https://swagger.io/docs/specification/using-ref/.
    
    Swagger UI 2.x embedded in the API toolkit has been corrected
    to resolve escaped forward slash ~1 and tilde ~0 characters
    in $ref directives.
    
    This problem is resolved in release 3.0.9.2 and 3.2.9.2 of the
    z/OS Connect EE API toolkit.
    

APAR Information

  • APAR number

    PH34543

  • Reported component name

    Z/OS CONNECT EE

  • Reported component ID

    5655CE300

  • Reported release

    000

  • Status

    CLOSED UR1

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2021-02-16

  • Closed date

    2021-03-30

  • Last modified date

    2021-03-30

  • 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

    Z/OS CONNECT EE

  • Fixed component ID

    5655CE300

Applicable component levels

[{"Line of Business":{"code":"LOB35","label":"Mainframe SW"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSNPJM","label":"IBM z\/OS Connect"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"3.0"}]

Document Information

Modified date:
14 February 2023