IBM Support

IT19833: AMPERSAND (&) IN FILENAME CAUSES MFT AGENT TRANSFER TO FAIL WITHBFGDM0097E ENTITY NAME MUST IMMEDIATELY FOLLOW THE '&'

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

  • An IBM MQ Managed File Transfer (MFT) queue resource monitor is
    created to invoke message-to-file transfers for messages
    detected on a monitored queue.  No message-to-file transfers are
    initiated and the following error is reported in the agent's
    event log:
    
    [timestamp] [thread_id] MonitorWork   W   BFGDM0113W: Trigger
    failure for <Queue_Resource_Monitor_Name> for reason BFGDM0097E:
    An internal error has occurred. The xpath expression is invalid
    (reason: org.xml.sax.SAXParseException: The entity name must
    immediately follow the '&' in the entity reference.)
    
    This error is observed when the messages on the monitored queue
    are created via MFT file-to-message transfers, where:
    
    a) the name of the files transferred to messages contain the
    string " & " (for example "bonnie & clyde.txt"),
    
    and
    
    b) message properties are set on the first message written
    during the transfer (which can be requested via the the
    fteCreateTransfer -qmp flag, for example).
    

Local fix

  • N/A
    

Problem summary

  • ****************************************************************
    USERS AFFECTED:
    This issue affects users of IBM MQ Managed File Transfer V8 and
    V9 who:
    
      a) perform file-to-message transfers,
      b) request that message properties are set on the first
    message written as part of each transfer
      c) transfer files that have names that contain one more of the
    following characters:
    
         - ampersand ('&')
         - left triangular bracket ('<')
         - right triangular bracket ('>')
         - double quote ('"')
         - single quote (''')
    
    Note that although these file-to-message transfers are
    successful, if message-to-file transfers are then subsequently
    performed, via a queue resource monitor, on these message, the
    queue resource monitor fails to trigger and reports the
    "BFGDM0097E: An internal error has occurred." message to the
    agent's event log.
    
    
    Platforms affected:
    MultiPlatform
    
    ****************************************************************
    PROBLEM DESCRIPTION:
    When an IBM Managed File Transfer (MFT) agent performs a
    file-to-message transfer, message properties can be set in the
    <usr> folder of an MQRFH2 header that is included on the first
    message that is written to the destination queue.  See the
    following Knowledge Center page for more details:
    
    https://www.ibm.com/support/knowledgecenter/SSFKSJ_9.0.0/com.ibm
    .wmqfte.doc/mq_message_properties.htm
    
    One such property that is set is the WMQFTEFileName property,
    which is the name of the source file for the transfer.
    
    If the name of the file being transferred contained an ampersand
    ('&') character, it would not be escaped by the agent when
    constructing the <usr> folder of the MQRFH2.  As a result, the
    for a file named "bonnie & clyde.txt", the <usr> folder would
    contain an entry like so:
    
      <WMQFTEFileName>bonnie & clyde.txt</WMQFTEFileName>
    
    As such,  when a queue resource monitor polls the queue for
    message-to-file transfers to initiate it was unable to parse the
    MQRFH2 header using an XML parser, leading to the BFGDM0097E
    error message reported in the Problem Description.
    

Problem conclusion

  • The IBM MQ Managed File Transfer (MFT) agent code has been
    updated such that property names and values are escaped such
    that reserved XML style characters (including ampersands and
    triangular brackets) are translated into the equivalent
    character references.  For example, ampersand characters are
    converted to the string "&".  Therefore, continuing the example
    from above, the WMQFTEFileName property would be written to the
    <usr> folder in the MQRFH2 header like so:
    
        <WMQFTEFileName>bonnie & clyde.txt</WMQFTEFileName>
    
    ---------------------------------------------------------------
    The fix is targeted for delivery in the following PTFs:
    
    Version    Maintenance Level
    v8.0       8.0.0.7
    v9.0 CD    9.0.3
    v9.0 LTS   9.0.0.2
    
    The latest available FTE maintenance can be obtained from
    'Fix List for WebSphere MQ File Transfer Edition 7.0'
    http://www-01.ibm.com/support/docview.wss?uid=swg27015313
    
    The latest available MQ maintenance can be obtained from
    'WebSphere MQ Recommended Fixes'
    http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006037
    
    If the maintenance level is not yet available information on
    its planned availability can be found in 'WebSphere MQ
    Planned Maintenance Release Dates'
    http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006309
    ---------------------------------------------------------------
    

Temporary fix

Comments

APAR Information

  • APAR number

    IT19833

  • Reported component name

    WMQ MFT V8.0

  • Reported component ID

    5724H7252

  • Reported release

    800

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2017-03-22

  • Closed date

    2017-04-27

  • Last modified date

    2017-04-27

  • 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

    WMQ MFT V8.0

  • Fixed component ID

    5724H7252

Applicable component levels

  • R800 PSY

       UP

[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSYHRD","label":"IBM MQ"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"8.0","Edition":"","Line of Business":{"code":"LOB36","label":"IBM Automation"}}]

Document Information

Modified date:
27 April 2017