search for books and compare prices
Tables of Contents for J2Ee Antipatterns
Chapter/Section Title
Page #
Page Count
Acknowledgments
xi
 
Foreword
xiii
 
Author Bios
xv
 
Introduction
xvii
 
Chapter 1 Distribution and Scaling
1
62
AntiPattern: Localizing Data
5
8
AntiPattern: Misunderstanding Data Requirements
13
4
AntiPattern: Miscalculating Bandwidth Requirements
17
6
AntiPattern: Overworked Hubs
23
8
AntiPattern: The Man with the Axe
31
4
Refactorings
35
28
Plan Ahead
37
4
Choose the Right Data Architecture
41
5
Partition Data and Work
46
5
Plan for Scaling (Enterprise-Scale Object Orientation)
51
3
Plan Realistic Network Requirements
54
2
Use Specialized Networks
56
2
Be Paranoid
58
2
Throw Hardware at the Problem
60
3
Chapter 2 Persistence
63
48
AntiPattern: Dredge
67
8
AntiPattern: Crush
75
6
AntiPattern: DataVision
81
6
AntiPattern: Stifle
87
4
Refactorings
91
20
Light Query
92
6
Version
98
5
Component View
103
4
Pack
107
4
Chapter 3 Service-Based Architecture
111
44
AntiPattern: Multiservice
115
6
AntiPattern: Tiny Service
121
6
AntiPattern: Stovepipe Service
127
6
AntiPattern: Client Completes Service
133
6
Refactorings
139
16
Interface Partitioning
140
4
Interface Consolidation
144
3
Technical Services Layer
147
4
Cross-Tier Refactoring
151
4
Chapter 4 JSP Use and Misuse
155
76
AntiPattern: Ignoring Reality
159
6
AntiPattern: Too Much Code
165
8
AntiPattern: Embedded Navigational Information
173
6
AntiPattern: Copy and Paste JSP
179
6
AntiPattern: Too Much Data in Session
185
8
AntiPattern: Ad Lib TagLibs
193
6
Refactorings
199
32
Beanify
201
3
Introduce Traffic Cop
204
6
Introduce Delegate Controller
210
6
Introduce Template
216
4
Remove Session Access
220
3
Remove Template Text
223
4
Introduce Error Page
227
4
Chapter 5 Servlets
231
52
AntiPattern: Including Common Functionality in Every Servlet
235
8
AntiPattern: Template Text in Servlet
243
6
AntiPattern: Using Strings for Content Generation
249
6
AntiPattern: Not Pooling Connections
255
6
AntiPattern: Accessing Entities Directly
261
6
Refactorings
267
16
Introduce Filters
268
5
Use JDom
273
5
Use JSPs
278
5
Chapter 6 Entity Beans
283
78
AntiPattern: Fragile Links
287
6
AntiPattern: DTO Explosion
293
8
AntiPattern: Surface Tension
301
6
AntiPattern: Coarse Behavior
307
8
AntiPattern: Liability
315
4
AntiPattern: Mirage
319
6
Refactorings
325
36
Local Motion
326
5
Alias
331
4
Exodus
335
5
Flat View
340
4
Strong Bond
344
7
Best of Both Worlds
351
4
Façade
355
6
Chapter 7 Session EJBs
361
50
AntiPattern: Sessions A-Plenty
365
6
AntiPattern: Bloated Session
371
6
AntiPattern: Thin Session
377
6
AntiPattern: Large Transaction
383
8
AntiPattern: Transparent Façade
391
4
AntiPattern: Data Cache
395
6
Refactorings
401
10
Session Façade
402
4
Split Large Transaction
406
5
Chapter 8 Message-Driven Beans
411
30
AntiPattern: Misunderstanding JMS
413
8
AntiPattern: Overloading Destinations
421
8
AntiPattern: Overimplementing Reliability
429
8
Refactorings
437
4
Architect the Solution
438
3
Plan Your Network Data Model
441
3
Leverage All Forms of EJBs
444
 
Chapter 9 Web Services
441
68
AntiPattern: Web Services Will Fix Our Problems
451
6
AntiPattern: When in Doubt, Make It a Web Service
457
6
AntiPattern: God Object Web Service
463
6
AntiPattern: Fine-Grained/Chatty Web Service
469
6
AntiPattern: Maybe It's Not RPC
475
8
AntiPattern: Single-Schema Dream
483
6
AntiPattern: SOAPY Business Logic
489
6
Refactorings
495
14
RPC to Document Style
496
5
Schema Adaptor
501
5
Web Service Business Delegate
506
3
Chapter 10 J2EE Services
509
46
AntiPattern: Hard-Coded Location Identifiers
511
6
AntiPattern: Web = HTML
517
6
AntiPattern: Requiring Local Native Code
523
6
AntiPattern: Overworking JNI
529
4
AntiPattern: Choosing the Wrong Level of Detail
533
6
AntiPattern: Not Leveraging EJB Containers
539
4
Refactorings
543
12
Parameterize Your Solution
544
3
Match the Client to the Customer
547
3
Control the JNI Boundary
550
3
Fully Leverage J2EE Technologies
553
2
Appendix A AntiPatterns Catalog
555
10
Distribution and Scaling AntiPatterns
555
1
Persistence AntiPatterns
556
1
Service-Based Architecture AntiPatterns
557
1
JSP Use and Misuse AntiPatterns
557
1
Servlet AntiPatterns
558
1
Entity Bean AntiPatterns
559
1
Session EJB AntiPatterns
560
1
Message-Driven Bean AntiPatterns
561
1
Web Services AntiPatterns
562
1
J2EE Service AntiPatterns
563
2
Appendix B Refactorings Catalog
565
10
Distribution and Scaling Refactorings
565
1
Persistence Refactorings
566
1
Service-Based Architecture Refactorings
567
1
JSP Use and Misuse Refactorings
568
1
Servlet Refactorings
569
1
Entity Bean Refactorings
570
1
Session EJBs Refactorings
571
1
Message-Driven Bean Refactorings
572
1
Web Service Refactorings
572
1
J2EE Service Refactorings
573
2
Appendix C What's on the Web Site
575
4
System Requirements
575
1
What's on the Web Site
576
3
References
579
2
Index
581