| About the Author | p. xi |
| About the Technical Reviewer | p. xii |
| Acknowledgments | p. xiii |
| Introduction | p. xv |
| Introducing Web Service Patterns | p. 1 |
| Web Services: Bringing Order to the Internet | p. 3 |
| Patterns: Bringing Order to Software | p. 5 |
| Understanding Web Service Patterns | p. 8 |
| Summary | p. 14 |
| Additional Reading | p. 14 |
| Introducing the P.T. Monday Case Study | p. 15 |
| Understanding the Current State of the Business | p. 16 |
| Understanding the Company Vision | p. 16 |
| Gathering Application Requirements | p. 17 |
| Making High-Level Application Architecture Decisions | p. 23 |
| Taking the Next Steps | p. 33 |
| Summary | p. 33 |
| Additional Reading | p. 34 |
| Exploring the Service-Oriented Architecture Pattern | p. 35 |
| Defining the Service-Oriented Architecture | p. 36 |
| Using the Service-Oriented Architecture | p. 37 |
| Understanding the Structure of the Service-Oriented Architecture | p. 39 |
| Preparing to Implement a Service-Oriented Architecture | p. 42 |
| Introducing Web Services, and Implementing the Service-Oriented Architecture | p. 44 |
| Leveraging Web Services in the Case Study | p. 53 |
| Summary | p. 55 |
| Related Patterns | p. 55 |
| Additional Reading | p. 56 |
| Exploring the Architecture Adapter Pattern | p. 57 |
| Facilitating Communication Between Architectures | p. 57 |
| Understanding the Structure of an Architecture Adapter | p. 60 |
| Preparing to Implement Architecture Adapters | p. 63 |
| Understanding Architecture Adapters in Web Services | p. 64 |
| Leveraging Architecture Adapters in the Case Study | p. 71 |
| Summary | p. 73 |
| Related Patterns | p. 74 |
| Additional Reading | p. 74 |
| Introducing the Service Directory Pattern | p. 75 |
| Seeing the Service Directory in Practice | p. 76 |
| Understanding the Structure of a Service Directory | p. 77 |
| Preparing to Implement a Service Directory | p. 81 |
| Using Universal Description, Discovery, and Integration (UDDI) for Web Services | p. 82 |
| Leveraging Service Directories in the Case Study | p. 95 |
| Summary | p. 96 |
| Related Patterns | p. 97 |
| Additional Reading | p. 98 |
| Exploring the Business Object Pattern | p. 99 |
| Seeing Business Objects in Practice | p. 100 |
| Understanding the Structure of Business Objects | p. 101 |
| Preparing to Implement Business Objects | p. 105 |
| Implementing Business Objects | p. 106 |
| Summary | p. 113 |
| Related Patterns | p. 113 |
| Additional Reading | p. 114 |
| Exploring the Business Object Collection Pattern | p. 115 |
| Seeing Collections in Practice | p. 116 |
| Understanding the Structure of Business Object Collections | p. 117 |
| Preparing to Implement Collections | p. 121 |
| Implementing a Collection Sample | p. 122 |
| Leveraging Collections in the Case Study | p. 127 |
| Summary | p. 129 |
| Related Patterns | p. 130 |
| Additional Reading | p. 130 |
| Exploring the Business Process (Composition) Pattern | p. 131 |
| Seeing Business Processes in Practice | p. 132 |
| Implementing a Simple Business Process Structure | p. 136 |
| Preparing to Implement a Business Process (Composition) | p. 140 |
| Implementing a Business Process (Composition) | p. 142 |
| Leveraging Business Processes in the Case Study | p. 148 |
| Summary | p. 150 |
| Related Patterns | p. 151 |
| Additional Reading | p. 151 |
| Exploring the Asynchronous Business Process Pattern | p. 153 |
| Seeing Asynchronous Business Processes in Practice | p. 154 |
| Understanding the Asynchronous Business Process Structure | p. 155 |
| Preparing to Implement an Asynchronous Business Process | p. 159 |
| Implementing an Asynchronous Business Process | p. 160 |
| Leveraging Asynchronous Business Processes in the Case Study | p. 164 |
| Summary | p. 165 |
| Related Patterns | p. 166 |
| Exploring the Event Monitor Pattern | p. 169 |
| Seeing Event Monitors in Practice | p. 169 |
| Understanding the Event Monitor Structure | p. 172 |
| Preparing to Implement Event Monitors | p. 176 |
| Implementing an Event Monitor | p. 178 |
| Leveraging Event Monitors in the Case Study | p. 182 |
| Summary | p. 184 |
| Related Patterns | p. 185 |
| Additional Reading | p. 186 |
| Implementing the Observer Pattern | p. 187 |
| Seeing the Observer Pattern in Practice | p. 188 |
| Understanding the Observer Structure | p. 192 |
| Preparing to Implement an Observer | p. 194 |
| Implementing the Observer Pattern Using Web Services | p. 195 |
| Leveraging Observers in the Case Study | p. 200 |
| Summary | p. 203 |
| Related Patterns | p. 203 |
| Additional Reading | p. 204 |
| Implementing the Publish/Subscribe Pattern | p. 205 |
| Seeing Publish/Subscribe in Practice | p. 206 |
| Understanding the Publish/Subscribe Structure | p. 210 |
| Preparing to Implement Publish/Subscribe | p. 214 |
| Implementing Publish/Subscribe | p. 215 |
| Leveraging Publish/Subscribe in the Case Study | p. 219 |
| Summary | p. 221 |
| Related Patterns | p. 222 |
| Additional Reading | p. 223 |
| Exploring the Physical Tiers Pattern | p. 225 |
| Looking Deeper at the Need for Physical Tiers | p. 226 |
| Understanding the Structure of the Connector Pattern | p. 230 |
| Preparing to Implement the Connector Pattern | p. 233 |
| Implementing the Connector Pattern with Web Services | p. 235 |
| Leveraging Physical Tiers and the Connector Patterns in the Case Study | p. 241 |
| Summary | p. 243 |
| Related Patterns | p. 244 |
| Additional Reading | p. 244 |
| Exploring the Faux Implementation Pattern | p. 245 |
| Seeing Faux Implementation in Practice | p. 246 |
| Understanding the Faux Implementation Structure | p. 249 |
| Preparing to Use the Faux Implementation Pattern | p. 252 |
| Using a Faux Implementation | p. 252 |
| Leveraging the Faux Implementation in the Case Study | p. 258 |
| Summary | p. 259 |
| Related Patterns | p. 260 |
| Additional Reading | p. 260 |
| Exploring the Service Factory Pattern | p. 261 |
| Seeing Service Factory in Practice | p. 262 |
| Understanding the Service Factory Pattern Structure | p. 265 |
| Preparing to Implement the Service Factory Pattern | p. 268 |
| Implementing the Service Factory Pattern | p. 270 |
| Leveraging the Service Factory Pattern in the Case Study | p. 274 |
| Summary | p. 276 |
| Related Patterns | p. 277 |
| Additional Reading | p. 277 |
| Implementing the Data Transfer Object Pattern | p. 279 |
| Seeing the Data Transfer Pattern in Practice | p. 280 |
| Understanding the Structure of the Data Transfer Pattern | p. 281 |
| Preparing to Implement the Data Transfer Patterns | p. 286 |
| Implementing the Data Transfer Object with Web Services | p. 288 |
| Leveraging the Data Transfer Object in the Case Study | p. 292 |
| Summary | p. 294 |
| Related Patterns | p. 295 |
| Additional Reading | p. 295 |
| Exploring the Partial Population Pattern | p. 297 |
| Seeing Partial Population in Practice | p. 297 |
| Understanding the Structure of the Partial Population Pattern | p. 299 |
| Preparing to Implement the Partial Population Pattern | p. 302 |
| Implementing Partial Population with Web Services | p. 303 |
| Leveraging Partial Population in the Case Study | p. 308 |
| Summary | p. 309 |
| Related Patterns | p. 310 |
| Using the Pattern Code | p. 311 |
| Installing the Environment | p. 311 |
| Installing Dependent Runtime Environments, Apache Tomcat, Apache Axis, and MySQL | p. 314 |
| Building the Examples | p. 316 |
| Deploying the Examples | p. 317 |
| Populating the Data and Running Samples | p. 317 |
| Finding Updates, Errata, and Documentation in the Downloaded Source Code | p. 318 |
| Using the SourceForge Open-Source Web Site | p. 318 |
| Index | p. 321 |
| Table of Contents provided by Rittenhouse. All Rights Reserved. |