
Sample: Loading Commerce Composer layouts
Before you begin
This sample requires a published store that is based on the Aurora starter store that is provided with WebSphere Commerce Feature Pack 7 and the Commerce Composer tool. Ensure that the following tasks are complete:- Review the Commerce Composer data load best practices. Follow these best practices when you load Commerce Composer assets with the Data Load utility.
About this sample
A Commerce Composer layout is an arrangement of layout widgets within a layout template that is used to render a store page. A layout contains one or more widgets that are placed in specific slots in the template. The properties (name-value pairs) of each widget are set to specific values. To create a layout, you can use the Data Load utility to load the layout information into the WebSphere Commerce database.
- SampleHomePageLayout
- SampleStaticContentLayout
- SampleDepartmentPageLayout
- SampleContentPageLayout
- SampleDefaultContentPageLayout
For more information about Commerce Composer layouts and the components that make up a layout, see Commerce Composer layout architecture.
WC_installdir/components/foundation/samples/DataLoad/CommerceComposer/layout
WC_installdir\components\foundation\samples\DataLoad\CommerceComposer\layout
WCDE_installdir\components\foundation\samples\DataLoad\CommerceComposer\layout
WC_installdir/components/foundation/samples/DataLoad/CommerceComposer/template
WC_installdir\components\foundation\samples\DataLoad\CommerceComposer\template
WCDE_installdir\components\foundation\samples\DataLoad\CommerceComposer\template

Sample input file | Description |
---|---|
CSV
XML
For more information about the data that is included in this file, see layout input file |
The Data Load utility uses this sample input file to load layout templates and layouts into a store so that Management Center users can use the layouts in the Commerce Composer tool The Data Load utility loads the information within the input file into the PAGELAYOUT, and PLTEMPLATEREL database tables. The Data Load utility uses the following business object mediator and business object configuration file to load the data within this input file: Business object mediator com.ibm.commerce.pagelayout.dataload.mediator.LayoutMediator Business object configuration file
|
CSV
XML
For more information about the data that is included in this file, see layoutWidgetRelationship input file |
This sample input file loads a layout template container and adds widgets into the layout template slots to create a layout. The Data Load utility loads the information within the input file into the PLWIDGET, and PLWIDGETREL database tables. The Data Load utility uses the following business object mediator and business object configuration file to load the data within this input file: Business object mediator com.ibm.commerce.pagelayout.dataload.mediator.WidgetMediator Business object configuration file
|
CSV
XML
For more information about the data that is included in this file, see subscribeWidgetdef input file |
This sample input file loads information to subscribe widgets and template
containers to a store. To subscribe a store to a widget, the widget must be registered within the
WebSphere Commerce database and Commerce Composer framework. A store must subscribe
to specific widgets and containers so that these objects can be used in the Commerce Composer tool
for that store. The widgets that are used in this sample are registered by default when you enable
the Commerce Composer tool. This sample loads two subscribeWidgetdef.csv files:
The Data Load utility loads the information within the input file into the PLSTOREWIDGET database table. The Data Load utility uses the following business object mediator and business object configuration file to load the data within this input file: Business object mediator com.ibm.commerce.pagelayout.dataload.mediator.SubscribeWidgetDefinitionMediator Business
object configuration file
|
CSV
XML
For more information about the data that is included in this file, see widgetnvp input file |
This sample input file loads information to set the properties of the widgets
that included in the slots for the layout that you are loading with this sample. The Data Load utility loads the information within the input file into the PLWIDGETNVP database table. The Data Load utility uses the following business object mediator and business object configuration file to load the data within this input file: Business object mediator com.ibm.commerce.pagelayout.dataload.mediator.WidgetNVPMediator Business
object configuration file
|
CSV
XML
For more information about the data that is included in this file, see registerWidgetdef input file |
This sample input file loads information to register a new widget or template container for use in the Commerce Composer tool. In this sample, the input file loads information to register the template containers for the layout. This input file is also loaded as part of the sample for loading a Commerce Composer layout template. The Data Load utility loads the information within the input file into the PLWIDGETDEF, and PLWIDGETDEFDESC database tables. The Data Load utility uses the following business object mediator and business object configuration file to load the data within this input file: Business object mediator com.ibm.commerce.pagelayout.dataload.mediator.registerWidgetdefMediator Sample business object configuration file for loading this information:
|
CSV
XML
For more information about the data that is included in this file, see template input file |
This sample input file loads information that defines a template that can be
used to create a layout. This input file is also loaded as part of the sample for loading a Commerce Composer layout template. The Data Load utility loads the information within the input file into the PAGELAYOUT database table. The Data Load utility uses the following business object mediator and business object configuration file to load the data within this input file: Business object mediator com.ibm.commerce.pagelayout.dataload.mediator.WidgetMediator Business
object configuration file
|
CSV
XML
For more information about the data that is included in this file, see slotDefinition input file |
This sample input file loads information to define the slots within a
container for a specific template. Each slot is defined with x and y coordinates. This input file is also loaded as part of the sample for loading a Commerce Composer layout template. The Data Load utility loads the information within the input file into the PLWIDGETSLOT database table. The Data Load utility uses the following business object mediator and business object configuration file to load the data within this input file: Business object mediator com.ibm.commerce.pagelayout.dataload.mediator.WidgetSlotsMediator Business
object configuration file
|
Procedure
- Open a command-line utility and go to the appropriate directory:
WC_installdir/bin
WC_installdir\bin
WCDE_installdir\bin
- Enter the following command to run the sample data load order
file for a Commerce Composer layout
and load the information for this sample:
./dataload.sh ../components/foundation/samples/DataLoad/CommerceComposer/layout/wc-dataload-layout.xml
dataload.bat ..\components\foundation\samples\DataLoad\CommerceComposer\layout\wc-dataload-layout.xml
dataload ..\components\foundation\samples\DataLoad\CommerceComposer\layout\wc-dataload-layout.xml
For more information about configuring and running the Data Load utility, see Configuring and running the Data Load utility.
Verifying results
Verify that the Commerce Composer tool layout information is loaded by reviewing the data load summary report. For more information about the location and contents of this summary report, see Verifying the results of the data load.
select * from PLWIDGETDEF where IDENTIFIER like 'Sample%';
select * from PLWIDGETDEFDESC where PLWIDGETDEF_ID in (select PLWIDGETDEF_ID from PLWIDGETDEF where IDENTIFIER
like 'Sample%');
select * from PLSTOREWIDGET where PLWIDGETDEF_ID in (select PLWIDGETDEF_ID from PLWIDGETDEF where IDENTIFIER
like 'Sample%');
select * from PAGELAYOUT where name like 'Sample%';
select * from PLTEMPLATEREL where PAGELAYOUT_ID in (select PAGELAYOUT_ID from PAGELAYOUT where NAME
like 'Sample%');
select * from PLWIDGET where PAGELAYOUT_ID in (select PAGELAYOUT_ID from PAGELAYOUT where name
like 'Sample%');
select * from PLWIDGETREL where PLWIDGET_ID_CHILD in (select PLWIDGET_ID
from PLWIDGET where PAGELAYOUT_ID in (select PAGELAYOUT_ID
from PAGELAYOUT where name like 'Sample%'));
select * from PLWIDGETSLOT where PAGELAYOUT_ID in (select PAGELAYOUT_ID from PAGELAYOUT where name
like 'Sample%');
select * from PLWIDGETNVP where PLWIDGET_ID in (select PLWIDGET_ID
from PLWIDGET where PAGELAYOUT_ID in (select PAGELAYOUT_ID from PAGELAYOUT where NAME like 'Sample%'));
Ensure
that the data within the sample input files exists within the appropriate database tables.
Open a layout for editing and in the Layout Assignments section, add an entry into the Pages table to assign the layout to a page.
Removing the sample data from the WebSphere Commerce database
To remove the sample data from
your database, run the sample again but with the value for the delete
column for all entries within the files set to 1
.
By setting the value for this column to 1
, the Data
Load utility deletes the data that is identified in the CSV file from
your database.
WC_installdir/components/foundation/samples/DataLoad/CommerceComposer/layout
WC_installdir\components\foundation\samples\DataLoad\CommerceComposer\layout
WCDE_installdir\components\foundation\samples\DataLoad\CommerceComposer\layout

- ij -f ..\components\foundation\samples\DataLoad\CommerceComposer\layout\Cleanup.sql

db2 -tvf ../components/foundation/samples/DataLoad/CommerceComposer/layout/Cleanup.sql
db2 -tvf ..\components\foundation\samples\DataLoad\CommerceComposer\layout\Cleanup.sql

sqlplus user_name/password@ database_name@ ../components/foundation/samples/DataLoad/CommerceComposer/layout/Cleanup.sql
sqlplus user_name/password@ database_name@ ..\components\foundation\samples\DataLoad\CommerceComposer\layout\Cleanup.sql