IBM Integration Bus, Version 9.0.0.8 Operating Systems: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

See information about the latest product version

Managing conversion warnings on converted legacy message maps

You can accept or reject conversion actions suggested by the map conversion process when you transform a legacy message map into a message map.

If you convert a legacy message map (.msgmap file) to a message map (.map file), and your message map contains complex mapping structures that the conversion process is able to recreate, your new map might include warnings on one or more of the transforms that are created by the conversion process. These warnings are displayed in the Graphical Data Mapping editor as conversion annotation icons ().

Note: The conversion process creates one warning per transform that needs to be reviewed. You must check all the warnings present on one or more of the transforms in your converted map. Why? The output of the converted transform might be different to the behavior in your original message map.

If transform with a warning after converting to a .map file. The Documentation property for the If describes the warning.

If a transform contains a conversion warning, it will have a small green arrow in the bottom-left of the transform.

In the Graphical Data Mapping editor, open your converted map, and complete the following actions to resolve the conversion warning:

  1. Select a transform with a warning.
  2. Review the transform properties in the Properties view to ensure that the transformation logic is correct.
  3. Accept or reject the proposed transform. Select one of the following actions:
    1. Select Accept Converted Transform to remove the conversion warning and accept the transformation logic implemented by the conversion process.
    2. Select Reject Converted Transform to remove the warning. The conversion process replaces the converted transform with a Task transform. Then, manually re-create the transformation logic.
      1. Select the Task transform.
      2. In the Task transform Properties view, check out the information provided in the Documentation tab.
      3. Edit the Condition property of the transform and manually define the transformation logic.

      The Documentation tab of the transform, the map conversion process includes the mapping structure from your legacy message map.

    3. Select Accept Converted Transforms to remove all the conversion warnings in your map and accept all the transformation logic implemented by the conversion process.
    4. Select Reject Converted Transforms to remove all the conversion warnings. The conversion process replaces each transform with a Task transform. Then, manually re-create the transformation logic.

Check the following conversion warning descriptions and the actions you can take to resolve them:

Conversion warning description Action to resolve it

The Java method call {0} cannot be converted. Before conversion, a Java method should be have been java:[package name].[class name].[method name]([arguments]) Refer to {1} and create a Custom Java Transformation.

The mapping cannot be converted due to a syntax error in the Java method call {0}.

To automatically convert the Java method, provide a "java:[package name].[class name].[method name]([arguments])". Alternatively, define a Custom Java Transform and implement your Java code.

The message map references the function {0}. The numbers of inputs provided by the message map and expected by the function definition are {1} and {2}, respectively. The extra input is:{3} Refer to {4} to resolve the discrepancy.

Review the input connections to the transform and remove the one that is not needed.

For more information, see Converting a legacy message map that includes ESQL mapping functions.

The message map references the function {0}. The numbers of inputs provided by the message map and expected by the function definition are {1} and {2}, respectively. Refer to {3} and provide values for all inputs.

Review your input connections and add the missing ones. The transform is missing at least one input connection

For more information, see Converting a legacy message map that includes ESQL mapping functions.

The following submap input in the message map was an expression not corresponding to any mapping input. Connect the input to a mapping input which will provide the value of the expression. Refer to {0} for the original mapping.

Connect the missing inputs to the submap.

The signature for Java method {0} in class {1} is not found in the workspace within the referenced projects and the Java build path. Refer to {2} for the original mapping and make sure the Java method is accessible from the map.

Define a project reference from the project containing the message map to the Java project that contains the Java class and method.

Review the definition being used as the cast for {0}, since it is defined in the following schemas. {1}

Check that the schema used to cast an xsd:any element or attribute is the correct one.

The connection to input {0} was converted from expression {1}. There is more than one element that can be identified as {1}. Review the input connection, and move the connection to another {0} if appropriate.

The transform was converted from a mapping with an ambiguous input.

The transformation code was converted from {0}. It is advised to review to ensure equivalent transformation outcome. Refer to {1} for the original function usage.

Review the transformation logic.

The transform was converted from a "for" statement, and produces one output for each instance of the input {0}. However, the output of the transform {1}, by definition, may expect only one occurrence. User review is advised to ensure the output is as expected. Refer to {2} for the original mapping.

Review the transformation logic.

The function {0} was converted from {1}. It is advised to review to ensure equivalent transformation outcome. Refer to {2} for the original function usage.

Review the transformation logic.

The transform was created by converting a non-trivial mapping in an older version of message map. User review is advised to ensure equivalent transformation outcome. Refer to {0} for the original mapping.

Review the transformation logic.

The transform was converted from a call to a user-defined ESQL function. All inputs of this transform are optional, if the user-defined ESQL function returns NULL when none of the inputs are present, an unexpected empty output element could be produced. To avoid an empty output element, consider setting a condition on the transform as shown below so that the transform will only be performed when at least one input exists: t{0} Refer to {1} for the original mapping.

A condition might be needed on the transform.

The transform was converted from an XPath expression involving an XML type cast. Before conversion, XPath functions were implemented in the runtime using equivalent ESQL functions. Some of these ESQL functions have more lax value typing than defined in the XPath specification of the function. The Graphical Data Mapper provides conforming XPath functions. As a result, the transform may fail at runtime with invalid value for type casting issues. In particular, the ESQL equivalent function may have provide a default value when the parameter value was empty. To resolve these type of issues, add conditions to detect and prevent the values that are invalid for the XPath function parameters being passed to the function. For example, the following condition will make the transform executed only when all inputs exist: \t{0} Refer to {1} for the original mapping.

A condition might be needed on the transform.

For more information, see Converting a legacy message map that includes ESQL mapping functions.

The XPath expression was converted from an expression involving a call to the msgmap:exact-type function. It is advised to review to ensure equivalent transformation outcome. Refer to {0} for the original function usage.

Review the XPath expression.

For more information, see Converting a legacy message map that includes calls to message map functions.

The transform involves the following input element which involves a text content: Determine if the element or its text content is the intended mapping input or output. If necessary, modify the corresponding connection. Refer to {0} for the original mapping.

Review the XPath expression.

For more information, see Changes in behavior in message maps converted from legacy message maps.

The transform involves the following output element which involves a text content: Determine if the element or its text content is the intended mapping input or output. If necessary, modify the corresponding connection. Refer to {0} for the original mapping.

Review the XPath expression.

For more information, see Changes in behavior in message maps converted from legacy message maps.

The XPath function call was converted from {0}. Ensure the argument number, order and type matches the supported function specification. Refer to {1} for the original function usage.

Review the XPath expression against the XPath specification.


br40808_.htm | Last updated Friday, 21 July 2017