• No results found

Unit 1: WebSphere Commerce Architecture

N/A
N/A
Protected

Academic year: 2021

Share "Unit 1: WebSphere Commerce Architecture"

Copied!
53
0
0

Loading.... (view fulltext now)

Full text

(1)

Unit 1:

WebSphere Commerce Architecture

1

(2)

Unit Objectives

2

This unit was designed to enable you to:

Start a development project that implements WebSphere Commerce V7.

Describe the Runtime architecture of WebSphere Commerce.

Describe the development model for WebSphere Commerce.

Explain the application of Struts in WebSphere Commerce.

Describe the presentation layer for WebSphere Commerce by using both

standard JSP files and Web 2.0-enabled JSP files.

Summarize the Business Logic and Persistence Layers.

Describe the benefits of EJBs, Access beans, and the Data Service Layer,

and describe what role each plays in persistence.

Summarize the elements and utilities available in access control.

Explain the development environment and how to effectively

(3)

Getting Started with WebSphere Commerce

V7

3

After completing this topic, you should be able to

describe the:

New features and functionality in WebSphere

Commerce V7.

Programming specifications of WebSphere

Commerce V7.

Establishing a team and develop a process for

implementing a solution by using WebSphere

Commerce V7.

(4)

What is new in WebSphere Commerce

V7

Multi-channel Precision Marketing

Mobile Commerce

Social Commerce

Efficient data loading utility

Starter Stores that are enabled by Web 2.0 technology

IBM Management Center enhancements

Migration assistance utilities

(5)

Programming Specifications

5

WebSphere Commerce Version 7.0 uses a number of programming

specifications:

Dojo

1.3.1

EJB Version 2.1

EMF Version 2.2

JavaMail

1.4

JAX-RPC 1.1

JEE

5

JDK and JRE Server and Client

Tools

1.6

JMS 1.1

JSP support (from

WebSphere Application Server

) 2.1

OpenLaszlo

4.2.0.3

SDO 2.0

Struts 1.2.9

Sun

Java

Servlet Version 2.5

XML

XSD 1.1

XSTL

(6)

Stage 1: Model

Gather requirements, design, simulate, and optimize business models

Team: Architects, Business Analysts

Stage 2: Assemble

Discover, assemble, test Team: Architects, Project Managers, Development teams

Stage 3: Deploy

Integrated deployment of processes Team: Project Managers, Administrators

Stage 4: Manage

Business monitoring for co-ordinated interaction, analytics, and optimization Team: Architects,

Administrators

Development Process: The Development Cycle

(7)

WebSphere Commerce

Architecture

7

After completing this topic, you should be able to describe

the:

WebSphere Commerce V7 Runtime architecture.

WebSphere Commerce V7 Application Layers.

The WebSphere Commerce V7 Runtime.

Core components of WebSphere Commerce.

Multi-channel support in WebSphere Commerce V7.

(8)

WebSphere Commerce

Runtime

Architecture

(9)

WebSphere Commerce

Application Layers

 Business models

 Represents a sample business situation or

describes a scenario.  Business processes

 Represents sample business functions and

cases.

 Presentation layer

 Responsible for displayingresults.

 Serv ice layer

 Segregates implementation of business logic.  Implemented by usingOAGi messages.

 Business logic

 Implements business rules independent of

the presentation.

 Implemented by using a command pattern.

 Persistence layer

 Records the data and operations.

 Represents entities within the Commerce

domain.

 Encapsulates data-centric logic.

 Database schema

 Designed specifically for e-commerce

applications.

(10)

Presentation Layer

WebSphere Commerce

V7

Runtime

Presentation layer

 Flexible architecture includes

Portal and Management Center.

Controller layer

 Enhanced to include support for

Portal and Management Center.

 Web channel offers support for

SDO tag library.

Business logic layer

 Supports NVP command

framework.

 Supports processing commands

for BODs.

Persistence layer

 Supports EJB 1.1 – EJB 2.0  Supports component services by

using the Data Service Layer as an abstract, SOA-compatible persistence solution over the database.

10

Controller Layer

Struts Sales Ctr Portlet Struts

Storefront Sales Ctr Portal Mgmt Ctr

Business Logic Layer

Services Interface Persistence Layer JSP Eclipse Portlets .lzx NVP cmds BOD cmds Access beans EJB beans Data Service Layer

(11)

Business Context Engine

Core Components

WebSphere Commerce Accelerator Administration C onsole Configuration Manager Development Environment IBM Management Center Organization Administration Console

Analytics Personalization Roles and

Relationships Globalization Foundation and Tools Business Integration Marketing Merchandising Catalog Management Business Intelligence Customer Service Order Management

(12)

Business Logic Layer

Multi-Channel Support in WebSphere Commerce

Presentation Layer is decoupled

from the Business Logic Layer

through the Services interface.

Multiple types of Sales Channels

can be connected to the

WebSphere Commerce Server with

the Services interface.

 Each sales channel can support its

own unique architecture.

Access to the database from the

WebSphere Commerce Server is

implied through the Persistence

Layer.

12 Marketing Services Interface WebSphere Commerce Server Struts Portal Mgmt Ctr Other Kiosk Sales Ctr Selling Member Trading Order Catalog

(13)

Presentation Layer

 W ebSphere Com merce supports multiple Pr esentation Layers

 Use a n appropriate Presentation Layer

th at is based on y our business r equ irem ents.

 Both the Struts and Portal Presentation La y ers follow the Model-View-Controller (MV C) design pattern.

 In W ebSphere Portal:

 Br ow ser request that are routed to a

con troller (portlet).

 Por tlet calls client libraries (Java

cla sses).

 Client library sends a service request for

pr ocessing.

 Por tlet dispatches rendered data to a JSP

pa g e in the portlet container.

 JSP pa ges client libraries tags to r etrieve

da ta.  In Struts:

 Br ow ser request is r outed to a servlet

th at acts as a controller..

 Con troller calls the model for processing  Con troller dispatches the appropriate

v iew to render data.

 Model en capsulates all business logic (as

com m ands) .

 JSP pa ges retrieve data from the

da tabase by using Data beans.

13

EJB Container

Business Logic Layer

Mgmt Center Client WebApp Web Container Servlet Portlet Container Portlet Libraries JSP JSP

(14)

Development Layers of WebSphere Commerce

14

After completing this topic, you should be able to

describe the:

Business Logic Layer:

Name-value pair processing commands

BOD processing commands

Persistence Layer:

Access

beans

and Enterprise

JavaBeans

Data Service Layer

(15)

Business Logic Layer

Business Logic Layer supports two methods of command processing:

 Traditional name-value pair processing

 SOA-compliant processing of Business Object Documents (BODs)  Both name-value processing and BOD processing

Both methods use the WebSphere Commerce command framework

Name-value pair processing

 Controller commands

 Task commands

BOD processing

 Get, Change, Process, Sync

15 Services interface BOD command processing Name-value pair command processing

(16)

Task command Task command Task command Controller command Controller command Controller command

Differences in Business Logic Layer Processing (1 of

2)

Name-value pair processing:

 Request for execution from

Presentation Layer.

 Business token that is passed to

Business Context service from Data

bean.

 Façade calls appropriate controller

command (or commands) which call task command (or commands).

 Controller and task commands call

Access beans which delegate to EJB

beans. 16 Services interface EJB container Business Context Access Bean JSP

(17)

Controller command Controller command BOD command

Differences in Business Logic Layer Processing (2

of 2)

BOD processing:

 Request for execution from

Presentation Layer in SDO format.

 Leverages Business Context service.  Pre-built BOD processing commands.  Commands call Data Service Layer to

access database. 17 Services interface EJB container Business Context

Data Service Layer

Data service façade BOM service Phys. Obj. Persistence

(18)

Data Service Layer

Abstraction for data access

Independent of the physical schema

Purpose:

 Functions independent of the framework.  Transforms data that is retrieved from

database into Java objects (implemented as SDO).

 Offers bidirectional transformation between

physical SDOs (schema) and logical SDO (classes).

 Allowsuser to perform CRUD operations on

physical or logical SDOs.

Services of the DSL:

Data service façade: Interface for

accessing data.

Business object mediation: Initializes

classes (mediators) that transform physical to logical data.

Physical object persistence: Provides

mediators access to physical data, translating XPath to SQL. 18 Data service facade Business object mediation Physical object persistence

(19)

Subsystem Data Models in WebSphere

Commerce

19

Catalog

 Catalogs, categories, products,

attributes, groupings

Marketing

 Promotions, rules server, product

advisor, WebSphere Commerce

Analyzer

Member

 Access control, authentication,

member (participants)

Order management

 ATP, calculation, pricing, payment,

procurement store, shipping, tax

System

 Collaboration, command, flow,

scheduler, messaging, system, user

traffic

Trading

Auctions, contract, RFQ

Payment

 Tables that are related to the WebSphere Commerce Payments

Multipayment framework and the Payments subsystem.

Workspaces

 Relationship of database tables that are used in workspace.

Gift Center (optional)

 Relationship of database tables

pertinent to the IBM Gift Center application.

Store Locator (optional)

Search (optional)

(20)

WebSphere Commerce

Supporting Services

20

After completing this topic, you should be able to

describe the:

Purpose and function of the Business Context

service.

Purpose and function of Web services in WebSphere

Commerce.

(21)

Business Context Services

Business contexts

 Contexts establish an execution

environment that affects the

output of a business component.

 Contexts are not directly invokedby clients; business components use the

information present in a context to fulfill operations.

Benefits

 Enablement of generic

components.

 Tailored content and

experience.

 Precisely targeted offers.  Enforcement of business

policies.

 Appropriate prices,

entitlements, and terms for a particular user.

(22)

Web

Services in

WebSphere Commerce

WebSphere Commerce as a

service provider:

 Enabling business operations

as externally accessible Web

services makes WebSphere Commerce a service provider.

 Web service deployment models usually have a central server with published WSDL defining the services.

 External clients, Web

applications, or rich client applications connect to the central server and invoke

services that aredefinedby the publicly available WSDL. 22 Client code Web service client code Web service engine Web service controller

Message mapping config Business logic façade JSP comp. service WebSphere Commerce Web service framework WebSphere Commerce Server Web service

(23)

Advantages of Web

Services in

WebSphere

Commerce

23

Uses WebSphere Application Server Web service

engine:

Hides the complexity of

SOAP

Reuses existing WebSphere Commerce assets:

Existing programming model

Existing integration technology

Designed for customization:

XML request message mapping

JSP response building

Inbound and outbound Web service

(24)

Elements of Access Control

24

Users

People that

use

the system.

Grouped into relevant access groups (

UserGroup

).

Roles are

used

to determine membership in an access group.

Roles are assigned to

users

on a per organization basis.

Actions

Activities that Users can perform on a Resource.

Actions can be grouped into relevant groups (

ActionGroup

).

Resources

Entities, such as JSPs and commands

,

that are protected

Can be grouped into relevant groups (

ResourceGroup

).

Relationships

Define connection between Users and Resources (such as Owner,

(25)

WebSphere Commerce

Feature Pack Updates

25

After completing this topic, you should be able to

describe the:

Catalog programming model updates.

WC search enhancements.

Sterling/CM integration.

Data load updates.

(26)

Storefront Programming Model and the Goal of

Feature Pack 3

26

Program model before Feature Pack 3:

Data

beans

SOI and

SOA-based

services.

U

nderstand different programming models when

using

catalog services in the store front.

Storefront catalog programming model solution in

Feature Pack 3:

Provide a consistent

SOA-based

programming model for the

store front .

Move store front catalog

service

that is currently based on

Java

beans

and SOI to SOA.

The solution

uses

the existing

WC

Search framework and the

(27)

Solution Architecture

27 Product Display JSP getData tag

Catalog

Service

Search

Engine

Database

CatalogNavigationView Noun

(28)

Sterling Configurator Integration

28

Provide an end-to-end Dynamic Kits authoring and shopping

flows.

Integrate with Sterling Visual Modeler (VM).

Allow

product managers define models for Dynamic Kits.

Integrate with Sterling Configurator (SC)

Allow

Product Managers to pre-configure Dynamic Kits in

Management Center .

A

llow

shoppers

to

configure

or reconfigure Dynamic Kits from the

Storefront.

Except the data, product, catalog, and price information for the

model are kept and managed in WebSphere Commerce.

Sterling products must be purchased separately.

Feature Pack 3 does not support Sterling DOM

integration and Sterling Configurator integration

working together.

(29)

Enhancements for Sterling Configurator Integration

29

Management Center updates:

Launch

the

Visual

Modeler

and Sterling Configurator with

automatic sign-on.

Define models reference for Dynamic Kit.

Search and browse model

by using

integrated Utility view.

Create pre-configuration for Dynamic Kit.

Manage prices for Dynamic Kits.

Storefront enhancements:

Show Dynamic Kits in the following area:

Catalog pages

e-Marketing Spot

Merchandising associations

(30)

Sterling Configurator Integration Main Flows

30

Management Center

Create dynamic kits, prices

Visual Modeler Configurator Pre-configure Production environment Staging environment Store Shopper Shop dynamic kit

Reconfigure

Sterling Web

Product manager

Configurator Sterling Web

Create new models / create model reference

Stage Prop Dynamic kit , Configuration

(31)

Data Load in Review

31

Introduced in V7 to reduce total cost of data loading.

Streamline and load data in a single command.

CSV file to database

Loading based on business objects.

Benefits:

More scalable

Better performance

Business

rule enforced

Better diagnostics and

error

reporting

In V7 business objects supported:

Catalog

Price

Inventory

(32)

Updates to Dataload

32

Support loading of workspace data by using data

load framework – Feature Pack 1.

Support loading of member data by using data load

framework: – Feature Pack 3

Person

Organization

MemberGroup

Data load utility command-line support only.

Sample member loader mapping configuration and

CSV files.

(33)

Data Load Utility - User

Interaction Diagram

(34)

Command-line Utilities

34

Command-line utilities ideal for messaging command design pattern

implementations.

txttransform

 This utility transforms data between a character-delimited format and an XML data

format.

xmltransform

 This utility transforms XML data into alternative XML formats.

dtdgen

 This utility generates a DTD based on the target database.

idresgen

 This utility generates identifiers for XML elements.

massload

 This utility loads data into the WebSphere Commerce database.

fileloader

 This utility loads managed files into the WebSphere Commerce database

massextract

(35)

Coremetrics Integration

35

Integration of Coremetrics and WebSphere Commerce

Management Center.

Store Tagging Update:

Coremetrics Store tagging API

update

Solr

search with facet attributes

New <cm:element> tag

New <cm:conversion> tag

Coremetrics Intelligent Offer integration enhancements:

New store function “

Enable

Intelligent Offer Integration”

Flat file import enhancements

Intelligent Offer Data Extraction Utility

(36)

Implementing Coremetrics for Commerce

36

STEP 1: Apply FP3, Install FEP3, enable store-enhancements,

Publish store, and enhancements sar files.

STEP 2: Configure site to communicate with Coremetrics.

Configure

bi-config.xml

file

STEP 3: Generate Category Definition File to capture catalog

hierarchy.

STEP 4: Enable pretagged analytics tags in Madisons/Elite

starter stores.

STEP 5: [For new stores only] Tag store JSP files with page view

tag.

Run auto tagging utility

(37)

Versions of the Coremetrics JavaScript Library

37

Standard Coremetrics library:

Uses the hosted libs.coremetrics.com/eluminate.js library

file version 4.7.4H or later versions that ends with letter H

Does not require hosting a

cmcustom.js

or

cmdatatagutils.js

file to support

WebSphere Commerce

customizations.

Custom Coremetrics library:

Uses an eluminate.js library file version that does not end

with the letter H, for example, version 4.7.4 or 4.7.5

Requires site to host a cmcustom.js or

cmdatatagutils

file to

(38)

WebSphere Commerce

Development

Environment

38

After completing this topic, you should be able to describe the:

WebSphere Commerce development environment.

Contents of the default workspace.

Tools available with WebSphere Commerce Developer.

Purpose and function for WebSphere Commerce workspaces.

Process for determining problems and troubleshooting

WebSphere Commerce.

Tiers of WebSphere Commerce for troubleshooting.

Logs and trace files with WebSphere Commerce.

Function of IBM Support Assistant in maintaining WebSphere

(39)

WebSphere Commerce

Development Environment

Rational Application Developer

V7.5.5.1

 Note: Rational Software Architect

V7.5.5.1 can be installed instead of

Rational Application Developer.  Eclipse-based development

environment.

WebSphere Commerce Developer V7

 Leveragestools from Rational Application Developer.

 LeveragesWebSphere Application Server V7 test server.

Development database

 Stores development artifacts.

 Can be DB2, Oracle, or Apache Derby

(default).

Lotus Expeditor V6.2

 Optional

 Used when developing and running IBM Sales Center for WebSphere Commerce. 39 WCDEV (DB2) Rational Application Developer V7.5.5.1 WebSphere Commerce Developer V7 Lotus Expeditor V6.2

(40)

WebSphere Commerce

Development

Environment

40

Installing WebSphere Commerce V7 Developer provides a fully

configured Rational Application Developer workspace.

The following projects are included:

WC: contains the core WebSphere Commerce EAR file.

CommerceAccelerator: contains assets for Commerce Accelerator.

LOBTools: customizable assets for IBM Management Center for WebSphere. Commerce

OrganizationAdministration: assets for the Organization Administration

Console.

SiteAdministration: assets for the Administration Console.  Stores: module for sample store assets.

WebSphereCommerceServerExtensionsData: create custom enterprise beans and other data assets.

WebSphereCommerceServerExtensionsLogic: create new logic, such as Java classes.

(41)

WebSphere Commerce

Tools

41

WebSphere Commerce Administration Console

Administration functions for maintaining a site or any

number of stores.

WebSphere Commerce Organization Administration

Console

User Administration functions, maintain security.

WebSphere Commerce Accelerator

User Console for making high-level modifications to

Storefronts.

IBM Management Center for WebSphere Commerce

(42)

Workspaces

Secure work area for developers to make and preview changes to managed

assets.

Does not affect production environment:

 Similar to having a private copy of managed production assets.

Workspaces offer the following features:

 Task groups and tasks for dividing work within workspaces.  Defined roles for managing workspaces, approvals, and content.  Separate tool for creating and administeringworkspaces.

 Locking policies to control changes.  Various forms of commit and publish.

 Controls how data is moved from development to production. 42

(43)

WebSphere Commerce

Problem Determination

43

Available resources:

WebSphere Commerce

Information Center:

Contains migration, installation, configuration information and more.

Contains several self-help tutorials.

IBM Education Assistant:

Provides self-help modules.

Offers some voice recordings and visual assistance.

Technical documents:

Supplemental technical information.

IBM developerWorks:

Offers specific examples.

Redbooks:

(44)

Problem Areas for Examination

Runtime issue could be anywhere along the path:

Browser: client side JavaScript, AJAX requests, cookie acceptance, cookie, or URL

limits, pop-ups.

Web Server: virtual hosts, SSL certificate, rewrites, redirects, ports.

WebSphere Application Serverplug-in: mapped modules, cluster, load

balancing, transports, virtual hosts.

Application Server: servlet filters, Commerce servlets, caching. Database: connections, SQL, contention, data itself.

44

Browser Web server Application server (WebSphere Commerce Server)

(45)

WebSphere Commerce

Logs

45

Web server log:

httpd.conf

defines the virtual hosts

WebSphere Application Server plug-in:

Check the

plugin-cfg.xml

file

Application server and WebSphere Commerce default files:

native_stderr.log

:

contains

text written

to the

stderr

stream.

native_stdout.log

:

contains

text written

to the stdout stream.

startServer.log

:

written

when starting the server.

stopServer.log

:

written

when stopping the server.

SystemErr.log

:

any

system error while the server is running.

SystemOut.log

:

system

output

file while the server is running.

activity.log

:

logs

continuous activity.

trace.log

:

If

trace is

enabled

, logs the components trace messages

(46)

IBM Support Assistant

for

WebSphere

Commerce

46

Ties to many key sites such as WebSphere Commerce

Zone.

Offers problem determination, product flashes, and

technotes.

Alerts user of APARs, fixes, and utilities.

News and preventive service planning.

Contains:

Product documentation

Publications

Commerce news

Preventive

service planning

Upcoming Webcasts

(47)

IBM Support Assistant

Data Collectors

47

Data collection can be tedious for some components.

Automated collectors within ISA help this process:

Commerce

collectors are one aspect of the Commerce

plug-in

download for ISA.

In-line with Commerce “MustGather” documents for

IBM Support.

Other products include

WebSphere Application Server

, DB2,

and

WebSphere Portal.

Speeds up initial data collection and ensures that a

complete set of data is collected.

WebSphere Commerce collectors for IBM Support

(48)

1.

Name some of the features and enhancements available

with WebSphere Commerce V7.

2.

List the Application Layers of WebSphere Commerce.

3.

The Business Logic Layer supports which two methods of

command processing.

4.

True or false: A task command can be composed of any

number of controller commands.

5.

List the three pieces of the Data Service Layer

Checkpoint

(49)

Checkpoint Solutions

49

1.

Multi-channel precision marketing, Mobile, and Social

Commerce, efficient Data Loading utility, new Starter Stores

that are enabled by Web 2.0 technology (EliteB2B), IBM

Management Center enhancements, ANT-based migration

assistance utilities, developer infrastructure improvements

for Rational Application Developer V7.5.

2.

Business Models, Business Processes, Presentation Layer,

Service Layer, Business Logic, Persistence Layer, and

Database Schema.

3.

Name-value pair processing and BOD processing

4.

Data service facade, business object mediation service,

physical object persistence service.

(50)

Exercise Introduction

Introduction to the WebSphere

Commerce Development

Environment.

In this lab exercise, you will:

 Start the WebSphere Commerce

development environment.

 Identify common projects that are used in the development process.

 Locate store artifacts to customize.  Launch the WebSphere Commerce

test server.

 Analyze server logs for debugging and

error handling.

(51)

Unit Summary

This unit has been designed to enable you to:

Start a development project that implements WebSphere

Commerce V7.

Describe the runtime architecture of WebSphere Commerce.

Describe the development model for WebSphere Commerce.

Explain the application of Struts in WebSphere Commerce.

Describe the presentation layer for WebSphere Commerce by

using both standard JSP files and Web 2.0-enabled JSP files.

Summarize the Business Logic and Persistence Layers.

Describe the benefits of EJBs, Access beans, and the Data

Service Layer, and describe what role each plays in persistence.

Summarize the elements and utilities available in Access

Control.

Explain the development environment and how to effectively

troubleshoot and debug WebSphere Commerce applications.

(52)

References

52

WebSphere Commerce V7 Information Center:

http://publib.boulder.ibm.com/infocenter/wchelp/v7r0m0/index.jsp

Apache Struts:

http://struts.apache.org

Open Application Group (OAGi) Business Object Document

architecture:

http://www.oagi.org

Dojo Foundation Toolkit 1.3.1:

http://www.dojotoolkit.org

OpenLaszlo:

http://www.openlaszlo.org

Service Data Objects (SDO):

(53)

References

53

IBM Support Assistant:

http://www.ibm.com/software/support/isa/

IBM Education Assistant for WebSphere Commerce:

http://publib.boulder.ibm.com/infocenter/ieduasst/v1r1m0/index.

jsp?

topic

=/com.ibm.iea.wcs/plugin_coverpage.html

IBM Support Portal:

http://www.ibm.com/support/entry/portal/

WebSphere Commerce Zone:

http://www.ibm.com/developerworks/websphere/zones/commerc

e

IBM Redbooks:

References

Related documents

Supporting this result, cultures containing marine ANME-1 and ANME-2 were shown to incorporate carbon derived from labelled methane into archaeol, monounsaturated archaeol

Install the vacuum pump and hydraulic the drive assembly on the vacuumpump mounting pad pump on the dual drive housing and fasten with required at the upper right side and fasten with

In order to successfully build an e-Commerce site using IBM WebSphere Commerce Suite and JDE, the following software requirements must be fulfilled:. • IBM WebSphere Commerce Suite

To display the order history, WebSphere Commerce first gets the orders from its local database for the orders that were submitted from the WebSphere Commerce store, but have not

Application and Information Assets What’s new ƒ IBM WebSphere Business Modeler ƒ IBM WebSphere Integration Developer ƒ IBM WebSphere Process Server ƒ IBM WebSphere

After the home is purchased, Team Tropical Escape Experts come in and outfit your home with unique customized furniture and décor package including amenities that will provide

Studies were included if they fulfilled the following six criteria: (1) randomized controlled trial, (2) Internet-based interventions, (3) based on cognitive behavioral

Translation could also be said to play a part in the way Kristin Linklater’s approach to voice work has impacted on my spoken and written work: I ‘translate’ some elements