search for books and compare prices
Tables of Contents for Professional Java E-Commerce
Chapter/Section Title
Page #
Page Count
Introduction
1
1
Who is this Book For?
2
1
What's Covered in this Book
2
1
What You Need to Use this Book
3
1
Conventions
4
1
Customer Support
4
7
SECTION 1 - THE E-COMMERCE LANDSCAPE
Defining E-Commerce
11
18
Defining E-Commerce in the Shadow of E-Business
12
1
Developing an E-Business Strategy
13
1
The Basics of E-Commerce
14
4
The Growth of E-Commerce
14
1
Which Came First - the Technology or the Uses?
15
1
Understanding the Audience
16
1
Considering the Six Webs
17
1
The Future of E-Commerce
18
1
Realization of E-Commerce
18
3
Business to Consumer (B2C)
18
1
Business to Business (B2B( )
19
1
Business to Business to Consumer (B2B2C)
20
1
Consumer to Consumer and Consumer to Business to Consumer (C2C and C2B2C)
20
1
Mobile Commerce (M-Commerce)
21
1
Benefits of E-Commerce
21
2
B2C
22
1
B2B
22
1
B2B2C
22
1
C2C and C2B2C
23
1
M-Commerce
23
1
Pitfalls of E-Commerce
23
1
Java's role in the E-Commerce World
24
2
Java 2 Enterprise Edition
25
1
XML
26
1
Summary
26
3
Requirements for E-Commerce Systems
29
20
The People Involved in the Process of Gathering Requirements
30
2
Differences Between E-Commerce Systems and Other Applications
32
3
For Developers
32
1
For Business Users
33
1
For Users
34
1
For the Requirements Gatherer
35
1
Business Requirements
35
4
Setting Goals for an E-Commerce Initiative
35
1
Meeting Stated Goals: The Process of Gathering Requirements
36
3
Important Considerations
39
3
Privacy and Security
39
1
Bridging the Gaps Between Countries
40
1
Payment Considerations
40
1
Customer Service
41
1
Technology Decisions
42
3
Scalability
42
1
Fault Tolerance
43
1
Integration
44
1
User Interface Design
44
1
Business Considerations
45
1
Considering the Package
45
1
Reporting
45
1
Summary
46
3
Planning the Project
49
22
Understanding the Players
50
2
Developers
50
1
Other Team Members' Needs and Responsibilities
51
1
Project Ownership
52
3
Do it Yourself
52
1
Outsource
53
1
Spin Off a Separate Division or Company
54
1
Making the Ultimate Decision
55
1
Methodologies
55
6
Traditional Methodologies
56
1
Example - Waterfall
56
1
Example - Rational Unified Process
57
2
Non-Traditional Methodologies
59
1
Example - Extreme Programming
60
1
Learn from Experience
61
1
Creating the Plan for the Project
62
4
Managing Requirements
62
1
Using Tools
62
2
Hosting Options
64
1
Other Considerations
65
1
Now What? Getting Started
66
1
Summary
67
4
SECTION 2 - ARCHITECTING JAVA BASED E-COMMERCE SYSTEMS
Architecting E-Commerce Applications
71
26
Successful E-Commerce Applications
72
7
Flexibility
73
1
Multi-Channel Interfaces
74
2
Security
76
1
Integration
76
3
Technical Requirements and Approaches
79
11
Dynamic, Personalized User Interfaces
79
1
Channel Specific User Interfaces
80
1
Layered Implementation of Business Processes
80
1
Two-Tier Architecture
80
1
Multi-Tier Architecture and Layering
81
3
The Key Features
84
2
Application Integration
86
1
Service Level Integration
87
1
Facilitating Integration
87
1
Transactions
88
2
Summary of Technical Requirements
90
1
The Evolution of Technology Requirements
90
3
Web Technologies
91
1
Web Application Servers
91
1
Middleware Technologies
92
1
Integrated Paradigm
92
1
Summary
93
4
J2EE for E-Commerce Applications
97
26
J2EE Architecture
99
6
The J2EE Runtime
100
2
J2EE Applications and Components
102
1
J2EE Services
103
1
J2EE Clients
104
1
Declarative Services
104
1
J2EE Components
105
6
Java Servlets
105
1
JavaServer Pages
106
1
Enterprise JavaBeans
107
2
Types of EJBs
109
2
J2EE Services
111
6
JNDI
111
1
JTA
112
1
JDBC
112
1
JMS
113
1
JavaMail
113
1
JAXP
114
1
Connector
114
1
JAAS
115
1
Declarative Services
116
1
J2EE Applications, Packaging, and Deployment
117
3
Summary
120
3
Approaches for E-Commerce Architectures
123
22
Component Granularity
124
5
Abstraction
124
3
CORBA and EJB
127
1
The Effect of Evolution on Granularity
128
1
Component Interfaces
129
5
Client Contract
129
1
Knowledge of Context
130
1
Clients and Interfaces
130
1
Layers and Interfaces
130
1
The Facade Pattern
131
3
Transactions in E-Commerce Applications
134
3
Transaction Duration
134
2
Transaction Distribution
136
1
Modes of Connectivity
137
6
Availability
137
2
Responsiveness
139
1
Resource Constraints
140
1
Asynchronous Communication
141
2
Summary
143
2
Delivering Data and Data Transformation - XML/XSLT
145
58
Commerce XML
146
5
Catalogs
147
1
Purchase Orders
148
3
Java XML APIs
151
1
XML Parsers
151
1
Processing XML Documents with SAX 2.0
151
12
The Role of SAX
152
1
SAX API and the Xerces Parser
152
2
Handling SAX Events
154
2
Echoing the Contents of an XML Document
156
2
Integrating SAX and JavaMail
158
5
Processing XML Documents with DOM
163
15
The Role of DOM
163
1
Exploring the DOM API
164
1
Creating a DOM Parser with Apache Xerces
164
1
Traversing the DOM Tree
165
3
Validating with DOM
168
1
Creating New XML Documents Using DOM
169
9
Java API for XML Parsing (JAXP)
178
4
Using SAX with JAXP
179
2
Using DOM with JAXP
181
1
Generating XML with JSP and Servlets
182
13
Simple JSP Example
184
2
Generating cXML with Servlets, JSP and JDBC
186
9
Transforming XML Data with XSLT
195
5
Running the Example
199
1
Summary
200
3
Security
203
50
Considering Security Concepts
204
4
Security Attacks
204
2
Defending Against Attacks
206
2
Basic Cryptographic Concepts
208
7
Ciphers
209
2
Certificates
211
2
Shared Key Authentication
213
1
Secure Socket Layer (SSL)
214
1
Security in Java
215
11
The Sandbox
216
1
Core Java Security
217
3
The Java Cryptography Architecture (JCA) and Java Cryptography Extension (JCE)
220
1
Java Secure Socket Extension
221
3
Java Authentication and Authorization Service
224
2
Secure Electronic Transactions
226
2
More Authentication and Authorization
228
6
HTTP Authentication
228
1
Access Control Lists
228
3
Base64 Encoding
231
2
Kerberos Authentication
233
1
Cookies
233
1
Server-side Security Issues
234
12
Data Security
234
1
Database Connections
235
1
Security Management in Enterprise JavaBeans
235
11
Firewalls
246
2
Firewall Types
246
2
Summary
248
5
SECTION 3 - B2C E-COMMERCE SOLUTIONS
B2C E-Commerce: Simple Site to Sell Goods Online
253
64
Requirements for an Online Store
253
1
The Online Shopping Experience
254
1
Security
254
3
Server Security - Firewalls
255
1
Data Transmission Security
256
1
Web Store Application Architecture
257
3
The Sample Store
258
2
Software Used
260
1
Implementing the Solution
260
45
Setting up the Web Store
260
1
Setting up the Database
260
3
Database Access
263
1
Web Store Home Page
264
5
Creating the Catalog
269
7
The Shopping Cart
276
1
Maintaining State
277
1
Displaying the Cart
277
9
Displaying the Shipping Options
286
4
Displaying the Order Form
290
3
Member Login
293
1
The Login Screen
293
2
Displaying Customer Information
295
5
The Checkout
300
4
Confirming the Order
304
1
Credit Card Authorization
305
1
Creating and Deploying the Application
305
9
Testing
314
1
Summary
314
3
B2C E-Commerce: Site Usability
317
50
Customer Friendly Sites
318
1
Improving Speed
318
1
Accessibility and Availability
318
1
Organization
318
1
Relating to the Customer
319
1
JSP Taglibs
319
9
CustomerInfoTag.java
325
3
Searching
328
4
The SearchInfo Bean
331
1
Providing Feedback
332
5
Custom Tag For Mail Message
333
4
Membership
337
23
Displaying Member Records
338
9
Member Modifications
347
2
Helping Members with Forgotten Passwords
349
4
New Member Registration
353
7
Internationalization
360
5
Changing the Language of our Site
361
4
Summary
365
2
B2C E-Commerce: Client Issues
367
34
Validating User Input
368
25
Client-side Validation
368
11
Cross-browser Design
379
1
Validating on the Server
379
3
The Server-side Validation Code
382
3
Server-side Validation of Form Fields
385
6
Confirmation of Validation
391
2
Java Applets and Plug-ins
393
1
Applet Requirements
393
1
Using Multimedia
394
1
Delivering Media
394
1
Delivering XML
395
4
Summary
399
2
B2C E-Commerce: Extending the Simple Site
401
32
Scalability
402
19
Vertical Scalability
402
1
Horizontal Scalability
402
1
Coding Implications
403
1
EJBs for Scalability
403
1
Developing a CMP Entity Bean
404
1
Developing a BMP Entity Bean
405
3
Developing a Session Bean
408
4
Developing JSP
412
4
Deploying The New Application
416
1
Creating a JAR for a CMP Entity Bean
416
3
Creating a JAR for a BMP Entity Bean
419
1
Creating a JAR for a Session Bean
420
1
Deploying the Application
420
1
Data Design and Access Strategies
421
2
Choice of Storage
421
1
Methods of Data Access
422
1
Integration with Existing Systems
423
7
Summary
430
3
In the Marketplace A - B2C with WebLogic and WLCS
433
52
Site Requirements
434
3
How We Went About the Project
435
2
Login
437
14
Project Organization
438
3
Class Diagram
441
2
The EJBs
443
2
The Login Screen
445
5
Login Summary
450
1
Coupons
451
10
Implementing Coupons
453
5
Managing Coupons
458
3
Automated Sales Help
461
21
Basics for an Intelligent Assistant
463
3
Motivation for Automating Sales Help
466
1
Sales Scripts
467
1
Our Own Sales Scripts
467
3
What this Means for Our Application
470
1
Overview of CONVERSE
470
1
What Else Do We Need
471
1
Scripts
472
3
Parsing
475
1
MicroQueries
476
1
Areas for Improvement
477
5
What is in the Project Code
482
1
WebLogic and WLCS Versions
482
1
Summary
483
2
B2C E-Commerce: Portal Sites
485
36
What is a Portal?
486
2
Context Driven Decision Making
486
1
What Types of Portals are There?
487
1
Implementations of Portals
488
5
Portal Categories
488
1
Managing Information
489
3
Portal Components Summarized
492
1
Building Your Portal
493
24
Build vs. Buy
493
1
A Simple Portal
494
2
Portal Storage Framework
496
5
JavaBeans
501
7
JSPs
508
7
Additional Features
515
2
Making Money with Your Portal
517
1
Summary
518
3
In the Marketplace B - A Customizable Portal Architecture
521
44
Portal Components
522
1
Laying the Foundations
522
10
Requirements for our Portal
523
2
Framework Design
525
3
The Backend
528
2
Available Technologies
530
2
Design for our Portal
532
18
The Framework Object Model
533
9
Web Gotchas - State and Sequence
542
6
Dynamic HTML (DHTML)
548
2
Logging
550
1
Implementation Details
550
12
Development Environment
551
9
Framework Sample
560
1
J2EE Demonstration Installation Instructions
561
1
Sample Walkthrough
561
1
Post-mortem
562
1
What Would I Keep?
562
1
What Would I Change?
563
1
Summary
563
2
SECTION 4 - B2B E-COMMERCE SOLUTIONS
B2B E-Commerce: B2B Foundations
565
30
B2B E-commerce - An Overview
566
7
Why Business-to-Business Integration?
567
1
B2B - Problems and Challenges
568
2
Business Process and System Integration
570
3
Technologies for B2B
573
13
J2EE for B2B
573
6
XML
579
5
Application Transport Technologies (B2B)
584
2
Organizations and Standards
586
5
Electronic Business XML (ebXML)
586
1
BizTalk
587
1
UDDI.org
588
1
XML Vocabularies
588
1
XML Common Business Library xCBL
589
1
RosettaNet
590
1
Internet Open Trading Protocol
590
1
OBI
590
1
Future Directions
591
1
Summary
591
4
B2B E-Commerce: Integrating Supply Chains
595
30
What is a Supply Chain?
596
1
Supply Chain Requirements
596
2
Data Representation - Traditional Solution: EDI
597
1
Security Requirements
597
1
Transport Bindings
598
1
Automation and Integration of Data Exchange
598
1
Supply Chain Trading Partner Collaboration
598
2
Defining Business Processes
599
1
The Manufacturer-Supplier Chain Simulator
600
22
Partner Discovery
601
1
Defining XML Messages
602
2
J2EE as a Supporting Supply Chain Platform
604
1
The Web tier
605
12
The Client
617
3
Building our XML Broker Framework
620
1
Software Requirements
621
1
Deployment
621
1
Summary
622
3
B2B E-Commerce: Transformation
625
22
XML Diversity
625
3
The New Tower of Babel?
627
1
Transformation as a Solution to Diversity
628
2
Where do Transformations Occur?
629
1
The Components of XSL Transformations (XSLT)
630
5
XSL
630
1
XPath
630
1
XPointer
631
1
XML Namespace
631
1
An Example Transformation
631
2
XSLT Processors
633
1
Processing XML and XSL Files - An Example
634
1
Implications for our Supply-Chain Integration
635
7
Implementation
637
2
Illustrations of the Mappings
639
3
Further Examples
642
2
Filtering Data
642
1
Merging Data
643
1
Writing Multiple Output Files
644
1
Summary
644
3
B2B E-Commerce: Mass Integration
647
34
Message Oriented Middleware (MOM)
649
5
Java Messaging Service (JMS)
649
2
JMS Concepts
651
3
Supply Chain Integration - Enhancing the XML Broker
654
20
The Web Tier Controller
655
3
The EJB Tier
658
7
JMS Enhancements
665
3
The Enterprise Information System Tier
668
1
Building the Application
668
1
Deploying the Application
669
5
Emerging Technologies and Future Directions
674
4
The Connector Architecture
674
1
Overview of Java API for XML Messaging (JAXM)
675
1
The M Project
676
1
Future Directions
677
1
Summary
678
3
In the Marketplace C - Supply Chain Integration
681
30
Components
682
1
Critical Success Factors
682
2
Compliance
682
1
Time to Market
683
1
Secure and Reliable
683
1
Cost Effective
684
1
The Solution
684
24
Order Collection System
685
11
Order Processing Module
696
12
Results
708
1
Summary
709
2
B2B E-Commerce: Internet Application Service Providers
711
16
Outsourcing
712
2
When Does Using an ASP Make Sense?
714
1
ASP Architecture
715
3
Programming Guidelines
716
1
Business Architectures
717
1
System Redundancy
717
1
Building a Network System
718
4
Choosing an ASP
722
2
What is Involved in Selecting an ASP?
722
2
The Future of ASPs
724
1
Summary
724
3
B2B E-Commerce: Inter-Company Workflow
727
28
Case Study: Willie's Widget Factory
728
3
A Spiral Methodology for Willie
728
1
Inception
728
1
Elaboration
729
1
Analysis
730
1
Construction
730
1
Transition
731
1
Applying the Design Methodology to the Case Study
731
22
Inception
732
2
Elaboration
734
3
Analysis
737
1
Construction
738
13
Transition
751
2
Summary
753
2
In the Marketplace D - Corporate Purchasing
755
60
Characteristics of Corporate Purchasing Systems
756
4
Corporate Purchasing as a B2C Activity
756
1
The Role of Workflow
757
1
Corporate Purchasing as a B2B Activity
758
1
The Headaches of Having More Than One Partner
759
1
Workflow
760
2
Wrong Number!
762
32
The Problem
762
1
Solutions
763
1
Design Patterns
764
3
Order States
767
4
Saving and Restoring State
771
6
Message Mechanisms
777
1
The JavaMail API
777
3
Using SMTP
780
3
What Do We Send?
783
1
Beyond E-mail
783
11
Legacy Integration
794
1
Scraping the Bottom of the Barrel
795
3
It's the Same System Except...
798
4
Designing with Integration in Mind
799
1
Allowing Data Reading
799
1
Allowing Data Writing
800
1
Multiple System Integration
800
2
The Development Process
802
1
Putting it all Together - An E-Commerce Design Approach
803
8
The Business Case
804
1
The Initial System Requirements
804
2
The Coarse-Grain Architecture
806
1
The Use of Development Partners
807
1
The Evolving System Prototype
807
1
The Development Process
808
1
Artifacts
809
1
Deriving a Model from Sources Code
810
1
Summary
811
4
SECTION 5 - M-COMMERCE
Technologies for M-Commerce
815
82
The Importance of Being Wireless
816
3
Revolutionizing Retailing and Service Provision
816
1
Revolutionizing Information Exchange
817
1
Revolutionizing Entertainment
818
1
Enabling Technologies
819
3
Bearer Technologies
822
4
GSM
822
1
SMS
823
1
GPRS
823
1
EDGE
824
1
3G Technologies
824
2
Wireless Application Protocol
826
3
The WAP Programming Model
826
2
Wireless Datagram Protocol
828
1
Wireless Transaction Protocol
828
1
Wireless Transport Layer Security
829
1
Wireless Session Protocol
829
1
Application Development in the WAE
829
38
Tools for WAE Application Development
830
2
Wireless Markup Language
832
1
It's a Game of Cards
833
1
Formatting Content
834
3
Basic Navigation
837
2
Tasks
839
2
Events
841
3
Global Control
844
3
Variables and Information Input in WML
847
5
WMLScript
852
1
Executing WMLScript
853
1
WMLScript Basics
853
1
Functions
854
1
Pragmas
855
1
Operators
856
2
Statements
858
2
Libraries
860
1
WMLScript Example
860
3
WAP: Some Pending Issues
863
4
Alternatives to WAP
867
1
Wireless Devices and Java Technology
868
5
Java on the Server Side
869
2
Java on the Client Side
871
2
CLDC
873
5
Java Language Support in CLDC
873
3
Pre-Verification
876
1
Network Support in CLDC
877
1
MIDP
878
17
The Nature of MIDlets
879
1
Developing MIDLets
880
7
MIDlet User Interface
887
7
Networking Support in MIDP
894
1
Persistent Storage Support
894
1
Microbrowsers and MIDlets - the Future
895
1
Summary
895
2
Smart Cards
897
88
Why Smart Cards?
898
2
M-Commerce
898
1
Barriers to Success
899
1
Smart Card Architecture
900
2
Java Card Technology
902
3
Java Card Virtual Machine
903
1
Java Card Runtime Environment (JCRE)
904
1
Java Card API and Language Subset
904
1
Programming Example
905
15
Setting Up
907
1
Designing our Java Card Applet
907
3
Programming our Java Card Applet
910
10
Summary
920
5
SECTION 6 - APPENDICES
Appendix A: XML Primer
925
22
What is XML?
926
1
Our First XML Document
927
1
Elements
927
1
Attributes
928
3
Prolog
931
1
Comments
931
1
Document Type Definition
932
1
XML Schemas
932
1
Building DTDs
933
7
External DTDs
940
1
Standardizing DTDs
941
1
ebXML
941
1
Banking Industry Languages
941
1
Travel
942
1
Summary
943
4
Appendix B: XSLT Primer
947
22
StyleSheets
948
1
Document Structure
949
5
Yet Another Language - XPath
954
1
Templates
954
2
Looping Constructs
956
1
Retrieving Data
957
1
Context
958
1
Patterns For Matching Nodes
958
4
Conditional Statements
962
1
Sorting Our Data
963
1
Using the xsl:variable Element
964
1
Using Multiple StyleSheets
965
1
Summary
966
3
Appendix C: XML and XSL Files for Chapter 7
969
4
Appendix D: Hexadecimal Conversion Charts
973
4
Appendix E: Extract from the Loebner Competition Transcript
977
4
Appendix F: Package Diagrams for the B2B XML-to-Object Broker Application
981
4
package com.wrox.broker
982
1
package ejbeans
983
2
Index
985