The information contained in this section applies to WebSphere Commerce Version 8. The documentation also applies to all subsequent releases and modifications until otherwise indicated in a newer section.WebSphere Commerce is a single, unified e-commerce platform that offers the ability to do business directly with consumers (B2C), directly with businesses (B2B), and indirectly through channel partners (indirect business models). WebSphere Commerce is designed to be a customizable, scalable, and high availability solution that is built to leverage open standards. It provides easy-to-use tools for business users to centrally manage a cross-channel strategy. Business users can create and manage precision marketing campaigns, promotions, catalog, and merchandising across all sales channels.
The topics in the Developing section describe tasks performed by an application developer.
The interaction between the business objects and persistence layer is isolated in an object called the Business Object Mediator. Business object document (BOD) commands interact with the Business Object Mediator to handle the interaction with the logical objects and how they are persisted.
These topics explain each of the store data assets in more detail. The store data assets in this section are organized according to the WebSphere Commerce store data architecture structure:
Creating a custom implementation of a WebSphere Commerce store requires a significant amount of planning. From gathering client needs, to deploying the live solution, much work is needed to successfully deploy a custom client store. Use the resources in here to help you plan every phase of store creation.
Review the following sections for information about installing the WebSphere Commerce product, associated maintenance, and WebSphere Commerce enhancements.
Before you migrate to WebSphere Commerce Version 8.0, review this information to help plan and execute your migration.
The topics in this section describe how to publish stores to either a test or production environment, and how to deploy customized code.
Topics in the Integrating category highlight the tasks that are commonly performed for using WebSphere Commerce in combination with other products.
WebSphere Commerce provides many tutorials to help you customize and understand your WebSphere Commerce instance and stores.
Functional architecture provides both the set of patterns used to implement the business functionality and the frameworks in which these business functions execute.
WebSphere Commerce deals with a large amount of persistent data. There are numerous tables defined in the current database schema. Even with this extensive schema, however, you might need to extend or customize the database schema for your particular business needs.
WebSphere Commerce uses Java Server Pages (JSP) to implement the view layer of the Model-View-Controller (MVC) design pattern. The view layer is in charge of retrieving data from the database through the use of data beans and formatting it to meet the display requirements. The view layers determines whether the request is sent to a browser or streamed out as XML. JSP files present a clean separation between data content and presentation.
The Controller layer is the conductor of operations for a request. It controls the transaction scope and manages the session related information for the request. The controller first dispatches to a command and then calls the appropriate view processing logic to render the response.
The business logic layer is the business components that provide OAGIS services to return data or start business processes. The presentation layer uses these OAGIS services to display data, or to invoke a business process. The business logic provides data required by the presentation layer. The business logic layer exists because more than just fetching and updating data is required by an application; there is also additional business logic independent of the presentation layer.
WebSphere Commerce provides several tools to create and manipulate your store data. The following list describes the tools.
Data in starter store archives takes the form of well-formed, XML files valid for the loading utilities. The store archive XML files are intended to be portable and should not contain generated primary keys that are specific to an instance of the database. Instead, the files use internal-aliases, which are resolved by the idresgen utility at the time of publish. The use of these conventions allows the starter store archives to be copied and published multiple times.
Use the Store tools in WebSphere Commerce Accelerator to create or edit the store assets.
To create the catalog assets for your store, you need to create a master catalog by adding information to several WebSphere Commerce database tables. You can create your catalog using XML files that are loaded into the database by the loading utilities. If you are creating a globalized catalog, you will need separate XML files for each locale your store supports. Each locale specific XML file adds the translatable information, such as descriptions, for your catalog, catalog groups, and catalog entries.
There are three main methods to create pricing assets.
In order to associate taxes with the goods and services in your store, you must associate a calculation code with the catalog entries in your store for each contract your store includes.
You can use the tax tools in the WebSphere Commerce Accelerator to create and edit certain tax assets (for example, tax categories and jurisdictions), but not all tax assets.
To create tax assets for your store using an XML file:
In order for your tax assets to work correctly in your store, you must associate the tax jurisdiction groups in your store to the fulfillment center used by your store, and then associate a calculation rule to both.
The shipping tools in WebSphere Commerce Accelerator allow you to create and edit certain shipping assets (for example shipping modes and jurisdictions), but not all shipping assets. The following list details the database tables that can be edited by the shipping tools:
You can add a currency by loading an XML file.
Before your store can ship goods to a customer, you must define the fulfillment center, or centers, that will supply these goods. Create this information in the format of XML files that can be loaded into the database using the Loading utilities. Fulfillment centers can also be created by using the WebSphere Commerce Accelerator.
Since inventory is operational data, it changes daily, as your customers purchase products from your store, or return items to it. As a result your inventory levels go up and down as you sell products, and as your fulfillment centers receive new inventory from suppliers.
You must create jurisdiction assets for your store in order to apply tax and shipping charges. Once jurisdictions have been created for your store, you can edit them or create new ones, using the Tax and Shipping notebooks in the store tools on the WebSphere Commerce Accelerator.
After you have defined the fulfillment center or centers that will supply goods for your store, you must associate a fulfillment center to each product. That is, you must identify which fulfillment center will supply which of your products.
In order to associate shipping modes with your store, you must associate a calculation code with the catalog entries in your store for each contract your store includes.
Units of measure are pre-populated in the WebSphere Commerce Server database when an instance is created. You can also define new units of measure in WebSphere Commerce for use in your store, or delete units of measure that you do not want to use in your store.
Language assets are pre-populated in the WebSphere Commerce Server database when an instance is created. You can also define new languages in WebSphere Commerce for use in your store, or delete languages that you do not want to use in your store.
When the WebSphere Commerce instance is created commands are loaded into the database by the language-independent bootstrap file. If you create or customize multiple new commands or JSP files for your store, you may want to register them using an XML file, which you can then load into the database using the loading utilities, or as part of a store archive that can be published using the Publish wizard.
If you do not want to create all the database assets and package them into a store archive file before publication, then you can load database asset groups using the WebSphere Commerce loading utilities.
All WebSphere Commerce database assets are divided into groups for creation and loading. These groups are a logically related set of tables. The order in which these database asset groups are organized is important to data loading, since certain objects must exist before you load the relationship between objects.
Bootstrap files are XML files which WebSphere Commerce uses during instance creation to populate database tables with information after the schema is created. Once the data is loaded, you can see the preloaded information in the appropriate database table. Bootstrap files can be used to retrieve information about specific data, such as calculation codes and pricing policies.
A tickler reminds a CSR or Customer Service Supervisor to perform an action such as calling a customer to get a replacement payment instruction or to review a price override. A tickler action code classifies work which is in done in an effort to resolve a tickler.
A tickler reminds a CSR or Customer Service Supervisor to perform an action such as calling a customer to get a replacement payment instruction or to review a price override. A tickler reason code defines the purpose for a tickler.
You can customize the Data Load utility to load custom data by creating your own data readers, column handlers, and business object mediators. When you are working with the Data Load utility to load custom data you can define how your data maps to WebSphere Commerce business objects as well as physical database schema, providing customization for specific business needs, and deploying the customization.
To use the web feed utility, you can integrate with any Content Management System that generates web feeds.
The ejbCreate method is used to instantiate new instances of an entity bean. This method is automatically generated but the generated method only includes logic to initialize primary keys to a static value.
ejbCreate
You will be using access beans in your business logic when you want to find data in the WebSphere Commerce database. Within an access bean, you must select the appropriate database record by using the primary key, or a finder method.
You can update data in your business logic by using an access bean to retrieve and change data. The commitCopyHelper() method is used to commit the changes you make in the access bean to the WebSphere Commerce database.
You can use access beans to create new data as part of your business logic.
You can delete data from the WebSphere Commerce database in your business logic using the remove() method on the access bean's EJB remote interface.
One of the strengths of WebSphere Commerce stems from its ability to take advantage of container-managed persistence (CMP) entity beans. CMP entity beans are distributed, persistent, transactional, server-side Java components that can be generated by the tools provided by WebSphere Commerce Developer. In many cases, CMP entity beans are an extremely good choice for object persistence and they can be made to work at least as efficiently or even more efficiently than other object-to-relational mapping options. For these reasons, WebSphere Commerce has implemented core commerce objects using CMP entity beans.
When creating new session beans, create them in the WebSphereCommerceServerExtensionsData project.
A data bean is a Java bean that is used in JSP pages to retrieve information from the enterprise bean. A simple data bean extends its corresponding access bean and implements the SmartDataBean interface. By extending an access bean, the data bean provides a simple indirect representation of an entity bean: it encapsulates the properties that can be retrieved from or set within the entity bean. Most code for the data bean is automatically generated by Rational Application Developer. You should store new data beans in the WebSphereCommerceServerExtensionsLogic project.
Access control in a WebSphere Commerce application is composed of the following elements: users, actions, resources, and relationships.
A business model, a representation of the business processes used throughout the site, provides a sample commerce solution which includes an organization structure, default user roles and access control policies, one or more starter stores, administration tools, and business processes that demonstrate best practices. A business model can be customized to support business requirements and scenarios. WebSphere Commerce provides sample business models that show some common commerce solutions. These business models are created by setting up an organization hierarchy structure, access control policies, stores, and contracts that help satisfy the necessary business requirements.
Before starting to develop your site with WebSphere Commerce, you need to determine the business model supported by WebSphere Commerce that best represents the purpose of your site. Usually sites created with WebSphere Commerce will be implemented based on of one of these business models.
Store data is the information that is loaded into the WebSphere Commerce Server database, which allows your store to function. The URL Registry Entries and View Registry Entries packages are included in the diagram, but they are not database assets. These entries are presentation configuration (that is, struts actions and forwards) that must be deployed. URL registry entries are shown in the diagram to illustrate the entire store data information model. To operate properly, a store must have the data in place to support all customer activities. For example, in order for a customer to make a purchase, your store must contain a catalog of goods for sale (catalog data), the data associated with processing orders (tax and shipping data), and the inventory to fulfill the request (inventory and fulfillment data).
You can extend the WebSphere Commerce product to fit your business needs. This topic describes the prerequisite skills and required knowledge that you need to customize business logic. After you have the required knowledge, use WebSphere Commerce Developer to take tutorials that guide you step-by-step through various customization scenarios.
WebSphere Commerce Developer is the development toolkit for customizing a WebSphere Commerce application.
A web service is an interface that describes a collection of operations that are accessible through the network by using standardized XML messaging.
WebSphere Commerce comes with a powerful and fully integrated search function. The search functions in WebSphere Commerce provide an enriched customer experience, with features such as automatic search term suggestions and spelling correction. Since it is built on open standards, WebSphere Commerce Search is highly flexible and extensible. Starter stores can use the search engine's most sophisticated features without requiring extra customization. A key feature of Search is that sales personnel can create and manage search term associations, and search-based merchandising rules, from within the Management Center and Store view.
The following section describes how you can leverage WebSphere Commerce features and functionality to help your site be compliant with different privacy and security standards.
These topics describe the security features of WebSphere Commerce and how to configure these features.