ebook img

SOA Approach to Integration: XML, Web Services, ESB, and BPEL in Real-world SOA Projects (From technologies to solutions) PDF

382 Pages·2007·9.759 MB·English
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 SOA Approach to Integration: XML, Web Services, ESB, and BPEL in Real-world SOA Projects (From technologies to solutions)

SOA Approach to Integration XML, Web services, ESB, and BPEL in real-world SOA projects Matjaz B. Juric Ramesh Loganathan Poornachandra Sarang Frank Jennings BIRMINGHAM - MUMBAI SOA Approach to Integration XML, Web services, ESB, and BPEL in real-world SOA projects Copyright © 2007 Packt Publishing All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews. Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the authors, Packt Publishing, nor its dealers or distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book. Packt Publishing has endeavored to provide trademark information about all the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information. First published: November 2007 Production Reference: 1211107 Published by Packt Publishing Ltd. 32 Lincoln Road Olton Birmingham, B27 6PA, UK. ISBN 978-1-904811-17-6 www.packtpub.com Cover Image by Vinayak Chittar ([email protected]) Credits Authors Editorial Manager Matjaz B. Juric Dipali Chittar Ramesh Loganathan Poornachandra Sarang Project Managers Frank Jennings Patricia Weir Abhijeet Deobhakta Reviewers Manish Verma Indexer Clemens Utschig Bhushan Pangaonkar Senior Acquisition Editor Proofreader Louay Fatoohi Chris Smith Development Editor Production Coordinator Mithil Kulkarni Shantanu Zagade Technical Editor Cover Designer Ajay.S Shantanu Zagade About the Authors Matjaz B. Juric holds a Ph.D. in computer and information science. He is Associate Professor at the University of Maribor and the director of Science Park project. In addition to this book, he has authored/coauthored Business Process Execution Language for Web Services (English and French editions), BPEL Cookbook: Best Practices for SOA-based integration and composite applications development, Professional J2EE EAI, Professional EJB, J2EE Design Patterns Applied, and .NET Serialization Handbook. He has published chapters in More Java Gems (Cambridge University Press) and in Technology Supporting Business Solutions (Nova Science Publishers). He has also published in journals and magazines, such as SOA World Journal, Web Services Journal, Java Developer’s Journal, Java Report, Java World, eai Journal, theserverside.com, OTN, ACM journals, and presented at conferences such as OOPSLA, Java Development, XML Europe, OOW, SCI, and others. He is a reviewer, program committee member, and conference organizer. Matjaz has been involved in several large-scale projects. He has been consultant for several large companies on the SOA projects. In cooperation with IBM Java Technology Centre, he worked on performance analysis and optimization of RMI-IIOP, integral part of the Java platform. Matjaz is also a member of the BPEL Advisory Board. Matjaz is author of courses and consultant for the BPEL and SOA consulting company BPELmentor.com. For more information, please visit http://www.bpelmentor.com/. My efforts in this book are dedicated to my family. Special thanks to Ana and to my friends at the Packt Publishing and University of Maribor. Ramesh Loganathan has 16 years of Systems Engineering and R&D Management experience in technology-intensive product development organizations, including Sonic Software (Technical Director—India Dev Center), Pramati Technologies (VP, Engineering), and Informix (Principal Engineer). Ramesh has full lifecycle experience setting up and managing product development organizations and motivating high-caliber engineering teams. He has strong Insight into Systems software, Middleware Technology, Database internals, Internet Architectures, and frameworks. Ramesh has led engineering efforts building software infrastructure products at Pramati and Sonic Software. After a brief engagement with Sonic/ Progress, Ramesh is now VP-Middleware Technologies at Pramati, driving the product direction and setting up a new Technology Consulting business around Middleware Systems. Ramesh has worked with several organizations in India and in the US including IBM, Lever, Compaq, TCS, Informix, and Integra. Ramesh is an accomplished Technologist and evangelist, regularly speaking at workshops and seminars. He is active in Tech fora, JCP, and SPEC organizations. He is a member of several Standards Expert groups including J2EE 1.4, and a founding member of ebXMLIndia.org and hyd-eclipse.org. Ramesh is actively engaged with academia and researchers and is an Adjunct Faculty member at IIIT-H teaching two courses on Middleware systems. Poornachandra Sarang, Ph.D. runs a Software Consulting and Training firm in the name of ABCOM Information Systems (http://www.abcom.com) and is currently an adjunct faculty in the Univ. Dept. of Computer Science at University of Mumbai. Dr. Sarang has previously worked as a Visiting Professor of Computer Engineering at University of Notre Dame, USA and has been a Consultant to Sun Microsystems for several years. Dr. Sarang has spoken in number of prestigious international conferences on Java/CORBA/XML/.NET organized by O’Reilly, SYS-CON, WROX, SUN, Microsoft and others. He has authored several articles, research papers, courseware and books. Frank Jennings, works in the Information Products Group of Sun Microsystems Inc. He has more than nine years of experience in Java, SOA, and System Design. He is an Electronics Engineer from Madras University and has worked for several open-source projects. About the Reviewers Manish Verma is VP, Delivery, at Fidelity National Information Service's software development center in Chandigarh, India. Manish has 14 years of experience in all the aspects of the software development lifecycle, and has designed integration strategies for client organizations running disparate systems. Manish's integration expertise is founded on his understanding of a host of technologies, including various legacy systems, .NET, Java technology, and the latest middleware. Prior to Fidelity National, Manish worked as a software architect and technical lead at Quark Inc., Hewlett Packard, Endura Software, and The Williams Company. Manish writes on technical topics on a regular basis. His current focus areas are integration of disparate systems, and web services security, transactions, access control, identity management, and provisioning. You can contact Manish at [email protected]. Clemens Utschig works within the Oracle SOA Product Management Team at Oracle Headquarters, Redwood Shores, where his responsibilities include cross-product integration as well as the growth of the developer community on OTN. Apart from technology, his focus is on project management and consulting aspects, as they relate to SOA implementations. As a native Austrian, his career started in Europe at the local consulting services branch, working with customers on J2EE and SOA projects, where he also founded the local Java community within Oracle Austria. He is a frequent speaker at international conferences where he evangelizes technology and the human factor as they relate to shifts in IT strategy. Table of Contents Preface 1 Chapter 1: Integration Architecture, Principles, and Patterns 5 Integration Challenges 6 Current Situation 8 Effective Information Systems 9 Replacing Existing Applications 9 Requirements and Strategies 11 Single Data Input 11 Information Access with Low Latency 12 Importance of a Centrally Managed Integration Project 13 Responsibility to Define Integration Architecture 14 Responsibility to Select Integration Infrastructure and Technologies 15 Development and Maintenance of Integration Documentation 15 Integration Architecture Steps and Approaches 16 Bottom-Up Approach 17 Top-Down Approach 21 Sound Integration Architecture Benefits 23 Types of Integration 24 Data-Level Integration 25 Application Integration 26 Business Process Integration 28 Presentation Integration 29 Business-to-Business Integration 29 Integration Infrastructure 30 Communication 31 Brokering and Routing 32 Transformation 33 Business Intelligence 33 Table of Contents Transactions 34 Security 34 Lifecycle 34 Naming 35 Scalability 35 Management 35 Rules 36 Integration Technologies 36 Database Access Technologies 37 Message-Oriented Middleware 37 Remote Procedure Calls 39 Transaction Processing Monitors 40 Object Request Brokers 41 Application Servers 42 Web Services 43 Enterprise Service Buses 45 The Integration Process 46 Choosing the Steps and Defining the Milestones 46 Sound Practices 48 Iterative Development 48 Incremental Development 49 Prototyping 50 Reuse 50 Integration Process Activities and Phases 50 Integration Patterns 52 Summary 53 Chapter 2: Service- and Process-Oriented Architectures for Integration 55 Defining Service-Oriented Architectures 57 Why SOA in the Integration Space? 60 Islands in the Enterprise IT Landscape 60 The Integration Problem 62 Custom Integration Application and Its Issues 63 Inverted View: Reusable Services, Simple Integration Processes 65 Enter SOA: A Services-Based Integration Architecture 65 Concepts and Principles of SOA 66 Paradigm Shift—from Self-Contained Applications towards "Services" 66 Service Orientation 67 Component-Based Services 68 The Internet Simplifies Remote Services 69 Consuming Services 71 Introducing SOA Architecture 71 [ ii ] Table of Contents Service Abstractions 72 Service Invocation and Service Implementation 73 Process Engines 73 Messaging Abstractions 73 Synchronous and Asynchronous Messages 74 Service Registries 74 Quality of Service 75 Communication Infrastructure 75 What is a "Bus"? 75 XML and Web Services: SOA Foundation 76 Using XML in Middleware 76 Middleware Mechanics for Services 76 XML-Based Mechanism to "Invoke" Services 77 Services over the Web via SOAP 79 Web Services—Protocols for SOA 79 Technology Agnostic System-to-System Interaction 81 Service Description—Using WSDL 83 Discovering the Services—UDDI 83 Containers to Host Web Services 84 Standards Foundation 84 Application Platforms (JAVA EE) Hosting Web Services 88 Using Services to Compose Business Processes 89 Simple Integration Applications 89 Simple Business Processes—Orchestrating the Services 90 Choreography—Multi-Party Business Process 91 SOA Security and Transactions 93 Security Challenges in a Services Environment 93 Simple Middleware Systems Security 94 Security in Java Infrastructure 95 Microsoft.NET Security 96 Web Services Security for Loosely Coupled Services 96 Emerging Web Services Security Standards 97 Transactions in SOA 98 Web Services Transaction—A Standard 99 Infrastructure Needed for SOA 99 Service Execution and Communications 100 Types of Component Services 101 Service Containers (Execution Engines) 101 Communication Infrastructure—Under the Covers 103 Communication "Bus"—At the Core 104 MOM 105 XML Backbone (XML, Transformations, and Persistence) 105 Reliability and Scalability 106 Managing a Distributed SOA Environment 106 Options for SOA Infrastructure 107 Web Services 108 [ iii ]

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.