Skip to Content
Former Member
Nov 17, 2016 at 11:58 PM

canonical item in composition handler not filled with RAW.xml mapping (V5.6)


In my custom composition handler, the canonicalItem does not have all fields populated from Raw.xml mapping.

Example: Function in custom composition handler:

 public  T compose(CanonicalAttributeDefinition CanonicalAttributeDefinition,
             CompositionGroup<? extends RawItem> compositionGroup, T canonicalItem)

  • The composition handler has order property defined > 1000 in spring.xml

  • The attribute on canonical object is mapping directly from a raw field in raw.xml

  • for example, this is the value I see on canonicalItem in the composition handler:

CanonicalItem{integrationKey='null', status=SUCCESS, compositionStatusDetail='null'BaseDataItem{id=null, dataPool=SAPORDER_INBOUND_POOL, fields={container=null, country=null, zipCode=null, orderType=null, orderNumber=null, ......

In this case, why is integrationKey='null' and orderNumber=null? A few values on the canonical item is populated, but it's not consistent which are populate each time.

If I look into the raw items in compositionGroup.getItems(), they all have valid value.

I also found the custom composition handler I define with higher order number are executed before lower number custom composition handlers.