App Connect

App Connect

Join this online user group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.

 View Only
  • 1.  Error while using Mapping node

    Posted Wed May 31, 2023 09:36 AM

    Dear forum members,

    I am on ACE 12.0.6.0 and am using a Mapping node to execute some database retrieval using information set up in Environment.Variables. When the Mapping node executes, I am getting an error (from the trace node log):

    ====>>> Environment
    ( ['MQROOT' : 0x260e48240f0]
      (0x01000000:Name):Variables = (
        (0x03000000:NameValue):purchaseOrderNumber     = 155258 (INTEGER)
        (0x03000000:NameValue):purchaseOrderLineNumber = 1 (INTEGER)
      )
    )
    
    ====>>> Exception List
    ( ['MQROOT' : 0x260e4824ab0]
      (0x01000000:Name):RecoverableException = (
        (0x03000000:NameValue):File                 = 'C:\ci\product-build\WMB\src\DataFlowEngine\PluginInterface\jlinklib\ImbJniNode.cpp' (CHARACTER)
        (0x03000000:NameValue):Line                 = 438 (INTEGER)
        (0x03000000:NameValue):Function             = 'ImbJniNode::evaluate' (CHARACTER)
        (0x03000000:NameValue):Type                 = 'ComIbmMSLMappingNode' (CHARACTER)
        (0x03000000:NameValue):Name                 = 'TEST_APP#FCMComposite_1_3' (CHARACTER)
        (0x03000000:NameValue):Label                = 'TEST_APP.Mapping' (CHARACTER)
        (0x03000000:NameValue):Catalog              = 'BIPmsgs' (CHARACTER)
        (0x03000000:NameValue):Severity             = 3 (INTEGER)
        (0x03000000:NameValue):Number               = 2230 (INTEGER)
        (0x03000000:NameValue):Text                 = 'Caught exception and rethrowing' (CHARACTER)
        (0x01000000:Name     ):Insert               = (
          (0x03000000:NameValue):Type = 14 (INTEGER)
          (0x03000000:NameValue):Text = 'TEST_APP.Mapping' (CHARACTER)
        )
        (0x01000000:Name     ):RecoverableException = (
          (0x03000000:NameValue):File                 = 'MbErrorHandler.java' (CHARACTER)
          (0x03000000:NameValue):Line                 = 151 (INTEGER)
          (0x03000000:NameValue):Function             = 'evaluate' (CHARACTER)
          (0x03000000:NameValue):Type                 = '' (CHARACTER)
          (0x03000000:NameValue):Name                 = '' (CHARACTER)
          (0x03000000:NameValue):Label                = '' (CHARACTER)
          (0x03000000:NameValue):Catalog              = 'BIPmsgs' (CHARACTER)
          (0x03000000:NameValue):Severity             = 3 (INTEGER)
          (0x03000000:NameValue):Number               = 3947 (INTEGER)
          (0x03000000:NameValue):Text                 = 'Caught BrokerXCIDynamicException' (CHARACTER)
          (0x01000000:Name     ):Insert               = (
            (0x03000000:NameValue):Type = 5 (INTEGER)
            (0x03000000:NameValue):Text = '{default}:TEST_APP_Mapping' (CHARACTER)
          )
          (0x01000000:Name     ):Insert               = (
            (0x03000000:NameValue):Type = 5 (INTEGER)
            (0x03000000:NameValue):Text = 'IXJXE0797E: [ERR 0712][ERR XPST0008] No binding was found for the external variable 'Environment'.' (CHARACTER)
          )

    The content of the mapping node is quite simple:

    And the select statement for the table (the where clause is generated when double-clicking the appropriate variable inside Environment/Variables):

    I can't figure out what I am doing wrong here. 

    Any suggestions?

    Thanks,
    Willem



    ------------------------------
    Willem Kunkels
    Senior Software Engineer
    Koopman International BV
    Amsterdam
    +31204947893
    ------------------------------


  • 2.  RE: Error while using Mapping node

    Posted Thu June 01, 2023 04:40 AM

    Does the type integer match the DBType for IKONR and IKRNR ?



    ------------------------------
    Francois Brandelik
    ------------------------------



  • 3.  RE: Error while using Mapping node

    Posted Thu June 01, 2023 05:04 AM

    Yes, it does. But that is not what the Mapping node complains about. If I put the parameters inside the OutputRoot and use that in the Mapping node, it works as expected. If I put the parameters inside the Enviroment.Variables then the error 

    No binding was found for the external variable 'Environment'.

    occurs.



    ------------------------------
    Willem Kunkels
    Senior Software Engineer
    Koopman International BV
    Amsterdam
    +31204947893
    ------------------------------



  • 4.  RE: Error while using Mapping node

    Posted Thu June 01, 2023 08:02 AM
    Edited by Francois Brandelik Thu June 01, 2023 08:03 AM

    Instead of using the Environment variable, have you tried using the LocalEnvironment variable in your xpath expression?



    ------------------------------
    Francois Brandelik
    ------------------------------



  • 5.  RE: Error while using Mapping node

    Posted Wed June 14, 2023 02:02 PM
    Edited by Martin Boag Wed June 14, 2023 02:03 PM

    Hi

    I was able to create a similar Mapping and successfully deploy and run on ACE v12.0.8.0.

    After looking at our Mappings side by side I released the difference .. and when I modified my Map to not have a "Message Assembly" on the input side, I was able to reproduce the same issue, with the failure 

    'IXJXE0797E: [ERR 0712][ERR XPST0008] No binding was found for the external variable 'Environment'.

    The solution when you do not have anything in the input side message body for a Mapping is to just add the "BLOB" domain, and only map the Properties tree.

    This is documented - but maybe needs to be shouted out a bit more.

    See topic Input and output messages to a message map 

    "In a message map, you must define a model for the input message and an output message.
    ...
    BLOB: Use this message model to handle messages in the BLOB domain, or when you do not need to process any message body data."

    So if you add "BLOB" as an input to your Map this should sort the issue


    Hope this getting you moving forward




    ------------------------------
    Martin Boag
    Software Developer
    IBM
    ------------------------------