ebook img

Patterns: Implementing Self-Service in an SOA Environment PDF

528 Pages·2006·5.4 MB·English
by  
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Patterns: Implementing Self-Service in an SOA Environment

Front cover Patterns: Implementing Self-Service in an SOA Environment Integrate Web applications with the enterprise tier Explore Web services, J2EE Connectors, and JMS solutions Use SOA and ESB technology Carla Sadtler Anup Aggarwal Diego Cotignola Sandy Grewal Peter Hood Shashi Shrimali Fernando Teixeira ibm.com/redbooks International Technical Support Organization Patterns: Implementing Self-Service in an SOA Environment January 2006 SG24-6680-01 Note: Before using this information and the product it supports, read the information in “Notices” on pagexi. Second Edition (January 2006) This edition applies to WebSphere Application Server V6. © Copyright International Business Machines Corporation 2005, 2006. All rights reserved. Note to U.S. Government Users Restricted Rights -- Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Contents Notices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xi Trademarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xiii The team that wrote this redbook. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xiii Become a published author . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv Comments welcome. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv Summary of changes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii January 2006, Second Edition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii Chapter 1. Patterns for e-business . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.1 The Patterns for e-business layered asset model. . . . . . . . . . . . . . . . . . . . 2 1.2 How to use the Patterns for e-business . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.2.1 Selecting a Business, Integration, Composite pattern, or a Custom design. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.2.2 Selecting Application patterns. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.2.3 Review Runtime patterns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 1.2.4 Reviewing Product mappings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 1.2.5 Reviewing guidelines and related links. . . . . . . . . . . . . . . . . . . . . . . 14 1.3 Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Chapter 2. Self-Service business pattern. . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.1 Self-service applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.2 Self-Service application patterns. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.3 Application pattern used in this book. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 Chapter 3. SOA and the Enterprise Service Bus . . . . . . . . . . . . . . . . . . . . 23 3.1 Overview of SOA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 3.1.1 Definition of a service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 3.1.2 Web services and SOA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 3.1.3 Messaging and SOA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 3.1.4 The advantages of SOA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 3.1.5 SOA summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 3.2 Overview of the Enterprise Service Bus . . . . . . . . . . . . . . . . . . . . . . . . . . 36 3.2.1 SOA infrastructure requirements. . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 3.2.2 Definition of an ESB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 3.2.3 Enterprise requirements for an ESB. . . . . . . . . . . . . . . . . . . . . . . . . 40 3.2.4 Minimum ESB capabilities. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 © Copyright IBM Corp. 2005, 2006. All rights reserved. iii 3.2.5 ESB and Web services technologies . . . . . . . . . . . . . . . . . . . . . . . . 45 3.2.6 Extended ESB capabilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 3.2.7 The ESB and other SOA components . . . . . . . . . . . . . . . . . . . . . . . 51 Chapter 4. Runtime patterns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 4.1 An introduction to the node types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 4.1.1 Why use an enterprise service bus?. . . . . . . . . . . . . . . . . . . . . . . . . 57 4.2 Runtime patterns for Directly Integrated Single Channel . . . . . . . . . . . . . 60 4.2.1 Generic Runtime pattern for Directly Integrated Single Channel . . . 60 4.2.2 SOA profile for Directly Integrated Single Channel. . . . . . . . . . . . . . 61 4.3 Runtime patterns for Router . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 4.3.1 Generic Runtime pattern for Router . . . . . . . . . . . . . . . . . . . . . . . . . 63 4.3.2 SOA profile for Router. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 4.4 Runtime patterns for Decomposition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 4.4.1 Generic Runtime pattern for Decomposition. . . . . . . . . . . . . . . . . . . 65 4.4.2 SOA profile for Decomposition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 Chapter 5. Product mappings and product overview . . . . . . . . . . . . . . . . 69 5.1 Product mapping. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 5.2 IBM WebSphere Application Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 5.2.1 WebSphere Application Server V6 for distributed platforms. . . . . . . 74 5.2.2 Service integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 5.2.3 ESB capabilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 5.3 IBM Rational Software Development Platform . . . . . . . . . . . . . . . . . . . . . 84 5.3.1 Workbench . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 5.4 Rational Application Developer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 5.4.1 Web development. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 5.4.2 EJB development . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 5.4.3 Web services support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 5.4.4 Connector support. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 5.4.5 Test environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 5.4.6 Team development. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 5.5 Rational Software Architect. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 5.5.1 Rational Unified Process guidance. . . . . . . . . . . . . . . . . . . . . . . . . . 95 5.5.2 Model-driven development . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 5.5.3 Modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 5.5.4 Asset-based development. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 5.6 For more information. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 Chapter 6. Technology options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 6.1 The big picture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 6.2 Client technologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 6.2.1 Web-based clients. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 6.2.2 Mobile clients . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 iv Patterns: Implementing Self-Service in an SOA Environment 6.3 Web application server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 6.3.1 Java servlets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 6.3.2 JavaServer Pages (JSPs). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 6.3.3 JavaServer Faces. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 6.3.4 Struts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 6.3.5 Service Data Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 6.3.6 Portal applications. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 6.3.7 JavaBeans . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 6.3.8 XML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 6.3.9 Enterprise JavaBeans. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 6.3.10 Additional enterprise Java APIs . . . . . . . . . . . . . . . . . . . . . . . . . . 127 6.4 Integration technologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 6.4.1 Web services. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 6.4.2 J2EE Connector Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 6.4.3 Java Message Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 6.4.4 Enterprise Service Bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 6.4.5 Others. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 6.5 Where to find more information. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 Chapter 7. Application and system design guidelines . . . . . . . . . . . . . . 139 7.1 e-business application design considerations. . . . . . . . . . . . . . . . . . . . . 140 7.2 Application structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 7.2.1 Model-View-Controller design pattern. . . . . . . . . . . . . . . . . . . . . . . 141 7.2.2 Result bean design pattern. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 7.2.3 View bean design pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 7.2.4 Formatter beans design pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 7.2.5 Command bean design pattern. . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 7.2.6 Frameworks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 7.2.7 WebSphere command framework with EJBs . . . . . . . . . . . . . . . . . 158 7.2.8 Best practices for EJBs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162 7.3 Design guidelines for Web services . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 7.3.1 Web services architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 7.3.2 Web services design considerations. . . . . . . . . . . . . . . . . . . . . . . . 168 7.3.3 The key challenges in Web services. . . . . . . . . . . . . . . . . . . . . . . . 178 7.3.4 Best practices for Web services . . . . . . . . . . . . . . . . . . . . . . . . . . . 182 7.4 Design guidelines for J2EE Connector Architecture. . . . . . . . . . . . . . . . 187 7.4.1 Components of J2EE Connector Architecture . . . . . . . . . . . . . . . . 187 7.4.2 Managed and non-managed environments . . . . . . . . . . . . . . . . . . 189 7.4.3 Outbound and inbound communication . . . . . . . . . . . . . . . . . . . . . 190 7.4.4 WebSphere Application Server and JCA . . . . . . . . . . . . . . . . . . . . 191 7.4.5 Common Connector Interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192 7.4.6 CICS resource adapters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 7.4.7 Selecting a CICS resource adapter. . . . . . . . . . . . . . . . . . . . . . . . . 196 Contents v 7.4.8 CICS ECI design considerations. . . . . . . . . . . . . . . . . . . . . . . . . . . 197 7.4.9 Best practices for J2EE Connector Architecture. . . . . . . . . . . . . . . 197 7.5 Design guidelines for JMS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198 7.5.1 Message models. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 7.5.2 JMS messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 7.5.3 Message-driven beans . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203 7.5.4 Managing JMS objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 7.5.5 JMS and JNDI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209 7.5.6 Choosing a JMS provider . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210 7.5.7 WebSphere default messaging provider design considerations. . . 211 7.5.8 WebSphere MQ design considerations. . . . . . . . . . . . . . . . . . . . . . 214 7.5.9 For more information. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 7.6 Design guidelines for the ESB. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 7.6.1 Service integration bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 7.6.2 Mediations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222 7.6.3 Working with messages in mediations . . . . . . . . . . . . . . . . . . . . . . 224 Chapter 8. Business scenario and design . . . . . . . . . . . . . . . . . . . . . . . . 229 8.1 ITSOMart overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230 8.1.1 Business goals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230 8.2 Customer registration scenario. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230 8.2.1 Actors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231 8.2.2 Use case. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231 8.2.3 Self-Service pattern selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232 8.3 Customer registration application design . . . . . . . . . . . . . . . . . . . . . . . . 233 8.3.1 Activity diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233 8.3.2 Sequence diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234 8.3.3 Technology and product selection . . . . . . . . . . . . . . . . . . . . . . . . . 236 Chapter 9. JSF front-end scenario. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239 9.1 Architectural overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240 9.2 System design overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241 9.2.1 Design considerations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241 9.2.2 Component model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243 9.2.3 Object model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246 9.3 Low level design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253 9.3.1 ITSOMart Web diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253 9.3.2 JSF managed bean design. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257 9.3.3 JSF input validation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259 9.3.4 Error handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260 9.3.5 Back-end interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262 9.4 Application development guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262 9.4.1 Rational Software Architect development environment . . . . . . . . . 263 vi Patterns: Implementing Self-Service in an SOA Environment 9.4.2 Web page templates. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264 9.4.3 Designing screens using the Page Designer . . . . . . . . . . . . . . . . . 267 9.4.4 Binding UI components to managed beans . . . . . . . . . . . . . . . . . . 268 9.4.5 Implementing page navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275 9.4.6 Implementing input validation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280 9.4.7 Debugging applications in Rational Software Architect. . . . . . . . . . 283 9.5 Runtime guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288 9.5.1 The web-config.xml configuration file . . . . . . . . . . . . . . . . . . . . . . . 288 9.6 System management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289 9.7 For more information. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289 Chapter 10. Web services scenario. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291 10.1 Architectural overview model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292 10.2 System design overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294 10.2.1 Component model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295 10.2.2 Object model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296 10.3 Applying the design guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301 10.4 Development guidelines for Web services . . . . . . . . . . . . . . . . . . . . . . 302 10.5 Application development using Web services. . . . . . . . . . . . . . . . . . . . 304 10.5.1 Implementation approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304 10.5.2 Creating a Web service from a session bean. . . . . . . . . . . . . . . . 305 10.5.3 Testing with the Web Services Explorer. . . . . . . . . . . . . . . . . . . . 314 10.5.4 Creating Web service clients. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316 10.6 Creating the mediations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323 10.6.1 Create the router mediation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324 10.6.2 Create the Aggregator mediation . . . . . . . . . . . . . . . . . . . . . . . . . 328 10.6.3 Extending the mediations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331 10.7 Runtime guidelines for Web services . . . . . . . . . . . . . . . . . . . . . . . . . . 331 10.7.1 Web services support in WebSphere Application Server V6 . . . . 331 10.7.2 Configuration tasks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334 10.7.3 Create an endpoint listener. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335 10.7.4 Create the outbound services. . . . . . . . . . . . . . . . . . . . . . . . . . . . 337 10.7.5 Create the inbound services. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340 10.7.6 Generate and export new WSDL for the services. . . . . . . . . . . . . 343 10.7.7 Update the Web service clients to use the bus. . . . . . . . . . . . . . . 344 10.7.8 Configure the router mediation . . . . . . . . . . . . . . . . . . . . . . . . . . . 350 10.7.9 Configure the aggregator mediation . . . . . . . . . . . . . . . . . . . . . . . 351 10.8 System management for Web services. . . . . . . . . . . . . . . . . . . . . . . . . 353 10.8.1 Security considerations for Web services. . . . . . . . . . . . . . . . . . . 354 10.8.2 Web Services Gateway. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358 10.9 More information. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359 Chapter 11. JMS scenario. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361 Contents vii 11.1 Architectural overview model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362 11.2 System design overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363 11.2.1 Component model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363 11.2.2 Object model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364 11.3 Applying the design guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365 11.3.1 Point-to-point messaging model . . . . . . . . . . . . . . . . . . . . . . . . . . 365 11.3.2 JMS resource lookups using JNDI . . . . . . . . . . . . . . . . . . . . . . . . 365 11.3.3 Message selectors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367 11.3.4 Message time-to-live. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368 11.3.5 Persistent versus non-persistent messages. . . . . . . . . . . . . . . . . 369 11.3.6 Mediation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369 11.4 Development guidelines for JMS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369 11.4.1 JMS development. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369 11.4.2 Creating a JMS client application . . . . . . . . . . . . . . . . . . . . . . . . . 370 11.4.3 Creating a message-driven bean . . . . . . . . . . . . . . . . . . . . . . . . . 370 11.4.4 Creating a mediation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373 11.5 Runtime configuration for JMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377 11.5.1 Create a queue destination. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377 11.5.2 Create the JMS connection factory. . . . . . . . . . . . . . . . . . . . . . . . 378 11.5.3 Create JMS queue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379 11.5.4 Create JMS activation specification . . . . . . . . . . . . . . . . . . . . . . . 379 11.5.5 Mediation configuration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380 11.5.6 Test the application. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383 11.6 System management for JMS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384 11.6.1 JMS performance issues. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384 11.6.2 Performance monitoring for mediations . . . . . . . . . . . . . . . . . . . . 384 11.6.3 Security considerations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386 Chapter 12. J2EE Connector Architecture scenario . . . . . . . . . . . . . . . . 389 12.1 Architectural overview model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390 12.2 System design overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391 12.2.1 Component model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392 12.2.2 Object model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394 12.3 Applying the design guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397 12.3.1 Creating the input and output record . . . . . . . . . . . . . . . . . . . . . . 398 12.3.2 Data conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401 12.3.3 Connection management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403 12.3.4 Executing the enterprise application. . . . . . . . . . . . . . . . . . . . . . . 406 12.3.5 Transaction management. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407 12.3.6 Security. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407 12.4 Development guidelines for JCA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407 12.4.1 The CICS enterprise application. . . . . . . . . . . . . . . . . . . . . . . . . . 408 12.4.2 Create a JCA application to access the enterprise application. . . 409 viii Patterns: Implementing Self-Service in an SOA Environment

Description:
ibm.com/redbooks .. 7.4.3 Outbound and inbound communication . developing, using, marketing, or distributing application programs conforming to IBM's This IBM Redbook teaches you by example how to design and build
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.