IBM Support

IT38342: PROXY SERVLET RETURNS SOAP FAULT MESSAGE IF NON-ASCII DATA IS SENT

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 using the Proxy Servlet, if you send a message containing
    non-ASCII data, you may get a 500 return with a SOAP fault with
    the following details:
    <faultstring>An internal error has occurred: 3 2222 in
    processPost</faultstring>
    <text>A communications failure occurred during message
    processing (MQPUT) in broker MyBroker</text>
    
    A trace of the servlet will show:
    java.nio.charset.UnmappableCharacterException: Input length = 1
    
    The servlet is attempting to write the message to MQ to share
    with the flow, but the setting do not tolerate non-ASCII data.
    

Local fix

  • Send only ASCII messages.
    

Problem summary

  • ****************************************************************
    USERS AFFECTED:
    All users of the proxy servlet in IBM App Connect Enterprise v11
    and v12 who need the POST/PUT/PATCH methods with non-ASCII data.
    
    
    Platforms affected:
    MultiPlatform
    
    ****************************************************************
    PROBLEM DESCRIPTION:
    If the proxy servlet receives a PUT, PATCH, or POST request
    whose body is not ASCII encoded then an error will be logged
    stating MQJE001: Completion Code '3', Reason '2222' and a SOAP
    Fault message with HTTP status code 500 will be returned.
    
    A service trace of the proxy servlet will show that the MQJE001
    error is due to an UnmappableCharacterException:
    
    20210820175117.571  40 WBIMBServlet processPost Sending data to
    DFE length=537
    20210820175117.571  40 { WBIMBServlet putInputMessage
    20210820175117.571  40   { MQClientContext getBrokerInputQueue
    20210820175117.571  40   } MQClientContext getBrokerInputQueue
    20210820175117.571  40   { WBIMBServlet putMQMessageToQueue
    20210820175117.571  40     WBIMBServlet putMQMessageToQueue
    Exception uncaught
    ioe.toString()=java.nio.charset.UnmappableCharacterException:
    Input length = 1
    20210820175117.571  40     WBIMBServlet putMQMessageToQueue
    Throwing bogus MQ Exception
    20210820175117.572  40     WBIMBServlet processPost Exception
    uncaught mqe.toString()=com.ibm.mq.MQException: MQJE001:
    Completion Code '3', Reason '2222'.
    20210820175117.572  40     WBIMBServlet processPost Something
    went wrong with the MQPUT - generating SOAP Fault message
    statusCode=500
    

Problem conclusion

Temporary fix

Comments

APAR Information

  • APAR number

    IT38342

  • Reported component name

    APP CONNECT ENT

  • Reported component ID

    5724J0550

  • Reported release

    B00

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2021-09-10

  • Closed date

    2021-09-17

  • Last modified date

    2022-03-10

  • 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

    APP CONNECT ENT

  • Fixed component ID

    5724J0550

Applicable component levels

[{"Line of Business":{"code":"LOB45","label":"Automation"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSDR5J","label":"IBM App Connect Enterprise"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"B00"}]

Document Information

Modified date:
11 March 2022