IBM Support

IJ16520: INCORRECT VALUES REPRESENTING NULLS WHEN USING JSON MAPPING

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

  • PROBLEM:
    Incorrect values representing nulls when using JSON Mapping
    Integer values in JSON shows as 0 in the outbound message even
    though they are empty/null in database. If the outbound message
    is in XML, they show as empty/null.
    Example:
    database value = null/empty ==> JSON maps to 0
    database value = 0 ==> JSON maps to 0
    Both scenarios are mapped to 0 in JSON message.
    PERFORMANCE ISSUE:
    NO
    STEPS TO REPRODUCE:
    Example:
    In Maximo, verify:
    - External System EXTSYS1 is enabled
    - Publish Channel MXWOInterface:
    It is enabled
    Event listener is enabled
    Message tracking is enabled
    1. Go To -> Work Order Tracking (T&D)
    2. Choose any WO (for example: 1005)
    3. Update the description and save
    
    1. Go To -> Message Tracking and find the xml generated for
    that WO (Integration Component MXWOInterface)
    Verify following fields:
    <PCACTHRS xsi:nil="true" />
    <PCPCHANGEDATE xsi:nil="true" />
    <PCPHYS xsi:nil="true" />
    <PCTASKCOMP xsi:nil="true" />
    They are null in the database, and no value is shown in XML.
    
    2. Go To -> JSON Mapping and create a new mapping:
    a. Mapping: EXTSYS1.MXWOINTERFACE.OUT
    b. Description: Test
    c. Object Structure: MXWO
    d. Direction: Outbound Processing
    e. End Point: OSLCDEFAULT
    f. JSON Data:
    {
       "PARENT": "String",
       "PCACTHRS": null,
       "PCPCHANGEDATE":"2018-05-14T13:00:59-07:00",
       "PCPHYS": null,
       "PCTASKCOMP": null,
       "WONUM": "String"
    }
    Save the record
    
    3. In Properties tab, JSON Properties Mapping for Process Order
    Click New Row:
    a. Target Property: PARENT
    b. Source Attribute: attr$PARENT
    c. Data Type: ALN
    Click New Row:
    a. Target Property: PCACTHRS
    b. Source Attribute: attr$PCACTHRS
    c. Data Type: ALN
    Click New Row:
    a. Target Property: PCPCHANGEDATE
    b. Source Attribute: attr$PCPCHANGEDATE
    c. Data Type: DATETIME
    d. Date Format: ISO 8601
    Click New Row:
    a. Target Property: PCPHYS
    b. Source Attribute: attr$PCPHYS
    c. Data Type: ALN
    Click New Row:
    a. Target Property: PCTASKCOMP
    b. Source Attribute: attr$PCTASKCOMP
    c. Data Type: ALN
    Click New Row:
    a. Target Property: WONUM
    b. Source Attribute: attr$WONUM
    c. Data Type: ALN
    Save the record
    
    1. Go To -> Publish Channel
    2. Find and select MXWOInterface, and update Processing class:
    a. com.ibm.tivoli.maximo.fdmbo.JSONMapperExit
    Save the record
    
    3. In Work Order Tracking (T&D), select same WO of step 2, and
    update the description again.
    4. Save the record.
    5. Go To -> Message Tracking and find the message generated for
    that WO (Integration Component MXWOInterface):
    {
       "PARENT": null,
       "PCACTHRS": 0,
       "PCPCHANGEDATE": null,
       "PCPHYS": 0,
       "PCTASKCOMP": 0,
       "WONUM": "1005"
    }
    RESULTS:
    Currently any null value for the Integer and Double type will
    be converted to 0 for the outbound processing.
    EXPECTED RESULT:
    show the value as null/empty in JSON outbound message, not
    convert to 0
    PRODUCT VERSION:
    IBM Maximo Asset Management 7.6.0.9
    

Local fix

  • NA
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    * MAXIMO                                                       *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    * INCORRECT VALUES REPRESENTING NULLS WHEN USING JSON MAPPING  *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    

Problem conclusion

  • The fix for this APAR is contained in the following maintenance
    package:
    	 | release\fix pack | Interim Fix for Release 7.6.1.2 Product
    

Temporary fix

Comments

APAR Information

  • APAR number

    IJ16520

  • Reported component name

    INTEGRATION

  • Reported component ID

    5724R46I1

  • Reported release

    760

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2019-05-30

  • Closed date

    2019-08-09

  • Last modified date

    2019-08-09

  • 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

    INTEGRATION

  • Fixed component ID

    5724R46I1

Applicable component levels

[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSLKT6","label":"IBM Maximo Asset Management"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"760","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]

Document Information

Modified date:
09 August 2019