The information contained in this section applies to IBM WebSphere Commerce Version 7.0.0.9 and Feautre Pack 8. The documentation also applies to all subsequent releases and modifications until otherwise indicated in new editions.
The topics in the Developing section describe tasks performed by an application developer.
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.
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 this section for information about installing the WebSphere Commerce product, associated maintenance, and WebSphere Commerce enhancements.
Before you migrate WebSphere Commerce, review this information for an overview of the migration process.
WebSphere Commerce provides many tutorials.
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.
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).
WebSphere Commerce Developer is the development toolkit for customizing a WebSphere Commerce application.
Struts is a well documented, mature and popular framework for building front ends to Java applications. To address concerns in software applications, it uses a Model-View-Controller (MVC) architecture: The Model represents the business or database code, the View represents the page design code, and the Controller represents the navigational code.
The Management Center framework is the foundation for business user tooling. The business objects are defined by the individual components that make up the Management Center. The framework uses those definitions to provide all of the features that you can use to find, create, modify, and delete the defined business objects. If you plan to customize the Management Center, it is important to understand the framework and the components that make up the Management Center.
You can use the test automation framework to write test cases that validate the Management Center model, services, and object definitions; this test framework is not intended to validate Management Center user interface widgets, such as properties views and list views.
The content versioning feature is enabled for some objects in the Catalogs tool in Management Center. You can add or remove content versioning support for existing objects and custom objects by customizing both Management Center and WebSphere Commerce server.
Customizing promotions can involve the customization of the promotion business user tools and the underlying promotion engine, which features a clean architecture supporting rich functionality, as well as a wide array of customization possibilities.
There are many aspects of the Marketing tool you can customize to suit the business needs of your site. For example, you can customize Web and Dialog activities, the Activity Builder user interface, e-Marketing Spots, and customer segments. Customization is supported for both the Marketing tool user interface and the marketing services.
E-mail activities allow business users to deliver news and promotions to customers using e-mail. This enables business users to reach customers who may not have visited your site in some time, or to keep regular customers up to date regarding up coming events or products.
You can customize price rules to suit the business needs of your site. For example, you can create a new condition or action for business users to add to price rules. Customization is supported for both the Price Rule Builder tool user interface in the Catalog Filter and Pricing tool, and for the pricing services.
You can customize store preview to add enhancements that help business users work more efficiently. These enhancements include the click-to-edit function and in-context preview function.
Customizing the infrastructure component provides you the ability to change configurable properties for Management Center and Search Engine Optimization (SEO) functionality.
The WebSphere Commerce browser-based tools (WebSphere Commerce Accelerator, Organization Administration Console, Administration Console) can be extended or changed. In addition to customizing the tools you can also create a new browser-based tool that uses the same underlying framework. A new tool based on the tools framework is referred to as a WebSphere Commerce tools user interface center.
To create JSP pages for WebSphere Commerce, you should have Rational Application Developer skills and JSP skills. You should also be familiar with JSTL.
WebSphere Commerce Accelerator provides tools to change various elements of the storefront, such as the store or site's logo, flow, text, and style. WebSphere Commerce starter stores, showcase many such configurable elements. Depending on the needs of the store or site, the store developer can make additional choices for flow, text, and style available to the WebSphere Commerce Accelerator tools by modifying the store or site's storefront assets.
This section offers the following selection of JSP programming best practices, which promote development of reusable and easily maintainable JSP pages within the WebSphere Commerce store development framework:
The useBean tag instantiates a WebSphere Commerce data bean and automatically populates it for you. A new programming direction has also been undertaken with our starter stores that now use the JavaServer Pages Standard Tag Library (JSTL) to perform view logic, instead of Java code. At the same time, business logic has been moving into data beans. The combination of these steps allows for less Java code in a JSP page.
Facebook integration relies on several Facebook plugins to add the Connect to Facebook, Like and Send buttons to the Aurora and Madisons starter stores.
Depending on the feature pack level of your store, you can use one of the following solutions to optimize your store for search engine results.
In the IBM Sales Center for WebSphere Commerce there is a set of user interface panels, views and dialogs that contain the most commonly used features. You can add to or configure the user interface to suit your needs, as well as changing the content and format of the data that is passed between the client and the server.
The purpose of double-click handling in WebSphere Commerce is to prevent processing the same request twice to ensure data integrity within the system. When processing certain URL requests, such as OrderItemAdd, the double-click feature of WebSphere Commerce will identify whether the request from the online shopper is currently being processed and blocks the current request if that is the case.
You can integrate WebSphere Commerce, a Business Application Service with WebSphere Portal, an Interaction Service. The Interaction Service provides core portal services (WebSphere Portal) that aggregate applications and content and deliver them as role-based applications. The Enterprise Service Bus (ESB) pattern is used for communication, mediation, transformation and integration with external systems. Using an ESB to integrate the Web services exposed from WebSphere Commerce to the WebSphere Portal promotes a loosely coupled design where the ESB manages the interactions styles between the WebSphere Commerce services and the presentation layer. You do not need to alter your presentation layer to support the protocol and format used by the WebSphere Commerce services. Instead, you rely on the ESB to perform tasks such as message transformation and protocol mediation. Neither WebSphere Commerce nor WebSphere Portal needs to change in order to communicate with one another. The ESB is used to act as an interpreter between the two systems and will translate the messages into a format the receiving system understands.
To integrate WebSphere Commerce and an external content management system, such as IBM Web Content Manager, ensure that you understand the JSTL tags for the integration. The JSTL tags are used on store pages to retrieve content and resolve links from the external system.
WebSphere Commerce provides a framework that you can configure to integrate your store with an external Web analytics solution. This framework includes a tag library that you can use in store page JSP files to provide appropriate analytics information to the external analytics system.
IBM Product Recommendations is an IBM Digital Analytics solution that you can subscribe to that automatically generates personalized product recommendations on the storefront. The recommendations are based on the browsing, shopping, and purchasing behavior of individual customers. If your site is integrated with IBM Digital Analytics, you can display recommendations from IBM Product Recommendations on your store pages.
You can integrate Management Center with IBM Marketing Center, a cloud-based, all-in-one solution that combines customer analytics with real-time marketing. To integrate with IBM Marketing Center, you must configure the WebSphere Commerce biConfig.xml file to enable the integration. You can also configure single-sign on between Management Center and IBM Marketing Center.
To simplify the process of collecting and sending customer shopping behavior data to analytics providers, integrate WebSphere Commerce with IBM Digital Data Exchange (DDX)
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.
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.
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.
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 search provides enhanced search functionality in starter stores by enabling enriched search engine capabilities such as automatic search term suggestions and spelling correction, while influencing store search results by using search term associations, and search-based merchandising rules.
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.