|
TypeHelper.replaceAssoications called from DefaultMergeEventListener.copyValues does not use the recursive copy for component types but relies on the recursive replaceAssociations() call to handle replacing the individual properties. This seems intentional, but if the component type contains a list which is null initialized (and a new list is initialized by ListType.replace()), the collection will be never set on the target (as Type.replace does not even get a reference which would allow replacing it in the target) but only included in the copied version which is discarded.
|