Component Replacement

Business Components provide a simple extension mechanism where base-package code can be made available to be replaced by customizations. For this to take place, two things must take place:

An example, replacement of the PersonFinders component is shown below. Component implementations are registered in the same order as the "application stack", that is "base" followed by "ccb" then followed by "cm". After the component is defined in one application, derived applications (higher on the stack) can replace the implementation.


package com.abcutilities.cis.customizations.person;
/**
 * @BusinessComponent
 *   (replacementComponent = true)
 */
public class CustomizedPersonFindersImpl 
    extends GenericBusinessComponent 
    implements PersonFinders {

    public Integer findCountByNameType(PerOrBusLookup nameType) {
        ... customized code ...
    }
    ...
}