Creating custom data load business object mediators

Occasionally the default business objects provided with WebSphere Commerce are insufficient to describe the types of data used in certain businesses, making it is necessary to extend or create new business objects. If you have created custom business objects, then you will need to create a custom business object mediator in order for the Data Load utility to understand them.

Before you begin

Ensure that you understand the following information:
  • The logical model of the business objects the custom mediator will work with.
  • The API for the com.ibm.commerce.foundation.dataload.businessobjectmediator.AbstractBusinessObjectMediator abstract class.
  • The API for the com.ibm.commerce.foundation.dataload.businessobjectmediator.BusinessObjectMediator interface.
  • The API for the com.ibm.commerce.foundation.dataload.object.TableDataObject class.

About this task

To create a custom data load business object mediator, extend the AbstractBusinessObjectMediator abstract class, which is the default implementation of the BusinessObjectMediator interface.

Procedure

  1. Open WebSphere Commerce Developer.
  2. Switch to the Java EE perspective.
  3. In the Enterprise Explorer view, double-click WebSphereCommerceServerExtensionsLogic to open this project.
  4. In the WebSphereCommerceServerExtensionsLogic project, implement the transform() abstract method to transform the custom business objects into a list of physical objects using the TableDataObject class.
  5. Optional: Override the other methods in the class as necessary to achieve the required functionality to mediate your existing data.
  6. Open the sample business object configuration file located in the WCDE_installdir\samples\DataLoad directory.
  7. Change the value of the className attribute inside the <_config:BusinessObjectMediator> element with the class name of your customized mediator.
  8. Save and close the file.
  9. Repeat steps 5 and 6 for each of your business object configuration files.

What to do next

Deploy your customized code.