Product overview > What's new summary > New features and functionality > What's new for developers
Application development enhancements
Add new words to dictionary for spell check
You can customize the Management Center spell checker to add new words to the dictionary that are specific to your company, such as product names, so that these words are no longer flagged as misspelled words.
Automated testing framework for starter stores reduces implementation costs
The test assets package offers fully functional sets of test scripts for the Madisons and Elite starter stores. The design of the scripts encourages reusability and as such they can be customized to test either the Brazil or MayUJoy starter stores. The scripts are run using the Storefront Test Automation Engine; a configurable Java project that is also provided in the package. Using the test assets to automate the test cases eliminates the need to manually perform test cases step-by-step, thus decreasing the cost of implementation.
The Storefront Test Automation Engine is equipped with a set of build scripts to enable the additional option of running test scripts as a batch. This alternative to manually running each test script improves efficiency as it allows development work to continue as test scripts are run in the background. Once the batch is complete, a report summarizing the results is generated.
The test assets package also provides a template, how-to instructions, and sample documentation to reduce the effort needed to plan and design storefront tests.
Customize starter store pages made easy
The HTML assets package contains a navigable set of static store pages for the Madisons and Elite starter stores. The static store pages can be modified to preview changes to the appearance, behavior or both before they are applied to the production environment. Previously, in order to preview changes, a web developer had to be familiar with the store's JSP files. The benefit of using the HTML assets to customize the storefront is the opportunity for a web developer to work directly with the store's HTML and CSS files. Once their updates are complete, they will use the highlight feature to identify the corresponding JSP files and relay the updates to a JSP developer.
The HTML assets package also contains the tools necessary to generate the own set of navigable, static store pages. In practice, this ability allows you to preview the pages with a different language, currency, or both.
RESTful Web service feed capability
WCS offers a framework that retrieves feeds from WCS Web services. You can display feed content to customers in remote widgets embedded on Web sites external to WCS v7. This is a great way to extend the brand reach and drive traffic back to your site. Without customization, the framework retrieves feeds for e-Marketing Spots, wish lists, and gift registries. If you have other ideas for Web services that would make compelling feeds for customers, you can customize the framework.
Reduce design time with use case documentation
During a customization project, perform architectural design even when you use a WCS v7 starter store.
To reduce the time required to document use cases for the store, a modifiable use case document is provided that clearly describes the functionality provided with a starter store.
To modify the Madisons starter store use cases to reflect changes that to make to the store, download and extract the smmadisonusecase.zip file.
To modify the Elite starter store use cases to reflect changes that to make to the store, download and extract the smeliteusecase.zip file.
Text color reflects publish status of a category or subcategory
You can change the text style used for categories and subcategories in the explorer view, utilities view, and list views to indicate the publish status of a category or subcategory. For example, you can change the text style for all published categories to display the text label using green, italics, and boldface text. The publish status is an indication of whether a category or subcategory is currently displayed or hidden from customers in the storefront. This is determined by the Display to customers check box in the Manage category tab of the Catalogs tool in the Management Center.
Improved performance and functionality with DB2 JCC type 4 connection type
WCS v6 used the DB2 legacy type 2 connection type. WCS v7 has upgraded to the DB2 JCC type 4 connection type, which provides improved performance and functionality.
This change includes both the run time data source connections and utilities connections, such as...
The type 2 connection type database name syntax has been deprecated for most utility command interfaces in WCS v7. For example, the syntax of the following database names in the sourcedb and destdb parameters are deprecated:
stagingprop.sh -dbtype DB2 -sourcedb stagingDBName -destdb productionDBName
Instead, use the following type 4 connection type database name syntax:
stagingprop.sh -dbtype DB2 -sourcedb host:port/stagingDBName -destdb host:port/productionDBName
Although you can still use the type 2 connection type database name syntax, this syntax is converted internally to type 4 syntax and a type 4 database connection is created. This naming conversion is completed using the DB2Administrator class provided by the DB2 JCC driver.
To avoid a potential performance impact due to the conversion, it is recommended that you use the type 4 connection type database name syntax.
If you choose to use the type 2 connection type database name, ensure that the database is cataloged properly on the local machine. The DB2Adminstrator class requires the DB2 catalog information to convert the host name and port number from the type 2 connection type name syntax.
Transition to SOA with Business Object Document (BOD) programming model
As part of the transition to an SOA architecture, three different layers of the application are identified and interactions between the layers are defined by consistent interfaces. In previous versions of WCS, there are implementation dependencies between the presentation layer, business logic layer and persistence layer. The new architecture in WCS version 6, Feature Pack 3.0.1 and later addresses this issue by using OAGIS messages to interact with the business logic.
The business logic command framework provides the capability of processing business object documents.
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. This represents the key differences between the SOI framework and the framework introduced in WCS v6 Feature Pack 3.
The application is divided into three layers:
- Presentation layer
- Acts as the interaction service that aggregates business components to form an application. The presentation layer interacts with business logic through the OAGIS defined services; it does not contain any business logic. OAGIS defined services of a service module retrieving business data, or executing any business logic. The presentation layer cannot query the database directly to retrieve business data. It interacts with business components. The IBM Management Center for WebSphere Commerce is an example of a presentation layer.
- Business logic layer
- 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 SOI implementation of the business logic layer is fronted by services, which transform the OAGIS messages (BODs) to name-value pairs for processing. This makes for easy integration with existing WCS or customized commands. The BOD processing patterns for OAGIS requests uses the persistence layer to accept structured data objects (SDOs) and handle the mapping between these logical structured objects and how they are persisted. The business logic layer is independent of the technology used to interact with how data is persisted. By interacting with the Business Object Mediator object, the business logic layer passes SDOs to the persistence mechanism without binding itself to the persistence technology.
There are four processing patterns:
- Business Object Document Get processing pattern
- Business Object Document Process processing pattern
- Business Object Document Change processing pattern
- Business Object Document Sync processing pattern
- Data service layer
- The business logic layer interacts with the data service layer through the Business Object Mediator (BOM) object. The persistence layer maps these structured objects to the persistence implementation to perform the data retrieval or updates. The persistence layer accepts SDOs which are transformed (mediated) into objects called physical SDOs. Physical SDOs are stored in the data service layer. All persistence-specific assets, such as SQL queries, are isolated within the data service layer. For simplify maintenance, the query template file stores SQL.
BOD-style Web services integration
Integrate using Business Object Document-style (BOD-style) Web services provides a common programming pattern for external client enablement that does not depend on a specific workflow implementation.
Web services support for back-end integration
WebSphere Commerce v6 Feature Pack 1 exposed numerous Web services to provide easier integration to back-end systems. The exposed Web services include those for Member, Order, and Inventory integration. The supported protocol for these Web services is either SOAP over HTTP or SOAP over JMS.
To bridge the integration from WCS to the back-end system, it is recommended that you use an enterprise service bus (ESB).
Easier mappings for contract terms and conditions
Before WCS v6 Feature Pack 2, to create a new term, you needed to create a new term EJB bean by extending the base term EJB bean. After you created the term EJB bean, you had to store it back into the same Java archive (JAR) file as the base term EJB bean, which meant redeployment to the application server. Any fix packs that affected the terms files overwrote the JAR file, and the changes were lost. With the release of WCS v6 Feature Pack 2, it is no longer necessary to create a new term EJB bean. Now, you make the term mappings in an XML file, rather than hard coding them in a term EJB bean. When the contract page is opened, any displayable extended terms are shown on separate tabs. On those tabs, you can set the values for these terms. Depending on the definition of the term, values are verified as well.
API changes
WebSphere Commerce API information leverages and extends the new capabilities of WCS v7 and provides improved interaction with existing capabilities.
IBM Sales Center errorHandler extension point
The IBM Sales Center error handlers extension point is the mechanism for defining a new error handler to improve the user experience of Sale Center when a user encounters an error.
DSL enhancements
The data service layer (DSL) provides an abstraction layer for data access that is independent of the physical schema. You can customize the data service layer to create and modify schemas and queries.
Code generation using the Java Emitter Template (JET) in Rational Application Developer 7.5 saves time
The Java Emitter Template (JET) is the Rational Application Developer upgrade to the Design Pattern Toolkit (DPTK). It is an Eclipse-enabled template engine for generating applications based on customizable, model-driven architecture transformations.
WCS v7 uses the JET plug-in to create WCS service modules from a simple XML file. By describing the service modules in a specialized XML syntax, the service modules can be generated. After a service module is generated, you can implement it without having to spend hours setting up and configuring the service module.
New JDBC drivers provide richer set of functions
WCS now uses the ojdbc6.jar JDBC driver for the Oracle database and the db2jcc4.jar DB2 JCC JDBC driver for the DB2 UDB database. These upgraded JDBC drivers provide WCS with a richer set of functions for creating database connections. The Oracle driver file supports JDK 1.6. The DB2 driver file supports JDK 1.6 and JDBC 4.0.
Management Center uses OpenLaszlo open source technology
The Management Center user interface is a rich graphical Web-based tool that business users interact with to manage their catalog, promotion, and marketing assets. Beginning with WCS v6 Feature Pack 3.0.1, the Management Center uses OpenLaszlo open source technology, which involves writing declarative XML files with embedded JavaScript.
Quickly index the site using sitemaps
Prior to WCS v6 Feature Pack 2, a search engine spider crawled through the Web site to index the store's pages. With sitemap integration, you can create a sitemap XML file, site map_ storeID.xml, that contains a list of URLs for the site. This significantly increases the speed of indexing. This way, customers are able to find your site when they perform a search, driving activity to the site and increasing revenue opportunities.
The WCS integration with sitemaps is made up of two parts:
- A sample sitemap JSPs file that can be used to generate the content of a search engine sitemap XML file. The content is the URLs that to index such as the catalog, contact us, and help pages.
- A command that compiles the JSP file, optionally validates, and saves the search engine sitemap XML file. The command can be scheduled to run regularly. For example, it can be scheduled to run at night based on the catalog update schedule.
Logical groupings for Web services supports front and back-end integration
WCS now provides logical groupings of services to standardize communication to support front and back-end integration.
The logical groupings include presentation oriented services for front-end integration, such as customer interaction with the storefront or Sales Center; marketing and merchandising services support back-end integration.
- Catalog
- Catalog services, introduced in WCS v6 Feature Pack 2, enable an external system, such as WebSphere Portal, to search for catalog related information in WCS. Three nouns are defined:
- Catalog
- CatalogEntry
- CatalogGroup
These nouns use the get, process and change verbs.
- Content
- Content services, introduced in WCS v6 Feature Pack 4, enable users to create and manage assets in the Management Center. Three nouns are defined:
- Attachment
- ManagedDirectory
- ManagedFile
These nouns use the get, process and change verbs.
- Contract
- Contract services, introduced in WCS v6 Feature Pack 2, retrieve all entitled contracts for a given user in a store and retrieves the contract content by the contractId. One noun is defined:
- Contract
The contract noun uses the get verb.
- Infrastructure
- Infrastructure services, introduced in WCS v6 Feature Pack 3.01, describe general store information, and store-related information such as language, currency, fulfilment center, and inventory system for the store. Two nouns are defined:
- Configuration
- OnlineStore
- Marketing
- Marketing services, introduced in WCS v6 Feature Pack 3.0.1, provide functionality to create marketing campaigns, customer segments, advertising; and e-mail activities. Several nouns are defined:
- Activity
- Campaign
- CampaignElementTemplate
- MarketingContent
- MarketingEmailTemplate
- MarketingSpot
- MarketingSpotData
- MarketingTrigger
Marketing nouns use the get, process and change verbs.
- Member
- Member services, introduced in WCS v6 Feature Pack 2, supports using an external system, such as WebSphere Portal, to create, update and search for members (organizations, users, and member groups) in WCS. Three nouns are defined:
- MemberGroup
- Organization
- Person
Member nouns use the get, process and change verbs.
- Order
- Order services, introduced in WCS v6 Feature Pack 2, enable order related business flows such as adding and removing order items, adding and removing payment instructions, changing an order. One noun is defined:
- Order
The Order noun uses the get, process and change verbs.
- Price
- Price services, introduced in WCS v6 Feature Pack 3.0.1, manage and calculate prices for products in the store. One noun is defined:
- PriceList
The PriceList noun uses the get, process and change verbs.
- Promotion
- Promotion services, introduced in WCS v6 Feature Pack 4, enable creating promotions in Management Center. One noun is defined:
- Promotion
The Promotion noun uses the get, process and change verbs.
Related concepts
Data service layer
WCS development environment
DB2 loop-back configuration on Unix platforms
WCS BOD command framework
Integration using Business Object Document-style Web services
WCS and service-oriented architecture (SOA)
Error handlers
Test the starter stores
Related tasks
Related reference
Java Emitter Template (JET) Component Projects pattern
Prerequisites for installing WCS
API changes between releases
Static pages for the Madisons and Elite starter stores
Related information
WCS Developer hardware, software, and network prerequisites