Java CAPS Basics - Michael Czapski, Sebastian Krueger, Brendan Marry, Saurabh Sahai, Peter Vaneris

Java CAPS Basics

Implementing Common EAI Patterns
Media-Kombination
496 Seiten
2008
Prentice Hall
978-0-13-713071-9 (ISBN)
78,30 inkl. MwSt
  • Titel ist leider vergriffen;
    keine Neuauflage
  • Artikel merken
Use Java CAPS to Streamline IT Services and Leverage Legacy Applications

Design patterns are a useful tool for streamlining enterprise integration and Web development projects: the mission-critical projects that directly impact your competitiveness. Enterprise Integration Patterns by Gregor Hohpe and Bobby Woolf (Addison-Wesley, 2004) described many of the most useful patterns for enterprise developers. Until recently, however, implementing the patterns in that classic reference required the extensive use of raw Java code. Now there’s a better alternative: Using Sun’s Java Composite Application Suite (Java CAPS), architects and developers can implement enterprise integration patterns succinctly, elegantly, and completely.

In Java™ CAPS Basics, Sun’s own Java CAPS experts show how to quickly put these new tools and technologies to work in your real-world enterprise application integration projects. After reviewing the challenges of enterprise integration, they introduce Java CAPS and show how it can simplify the development of today’s state-of-the-art “composite” applications. Next, they bridge the gap between abstract pattern languages and practical implementation details. You will learn essential Java CAPS concepts and methods in the context of the patterns you’ll actually use for real-world message and system management.

Coverage includes


Comparing approaches to enterprise application integration and finding ways to integrate non-invasively, with fewer changes and lower costs
Mastering the core integration tools provided by Java CAPS: eGate, eInsight, eWays and JMS
Using enterprise integration patterns to improve application reusability, scalability, resilience, security, and manageability
Implementing patterns for message exchange, correlation, infrastructure, routing, construction, transformation, and endpoints
Generating and using cryptographic objects such as X.509 Certificates, PKCS#12, and JKS Keystores
Using advanced techniques such as solution partitioning and subprocess implementation, many of which are covered nowhere else
Constructing two complete example solutions that bring together many of the patterns discussed and illustrated in this book


The companion CD contains detailed illustrations for most of the relevant patterns and two complete Java CAPS-based case studies (with solutions) that implement a number of the patterns discussed in the book. In addition, Part II contains a chapter on cryptographic objects used to configure security-related aspects of the suite. It also provides more than sixty detailed examples designed to illustrate the concepts and patterns presented in this book. Built with JCAPS eDesigner, these graphical, component-based examples can easily be used by business analysts and others with or without strong coding skills.

Michael Czapski has 25 years of experience in the IT industry, the last 10 in the field of enterprise application integration. He provides Java CAPS expertise and leverages Java CAPS capabilities in solutions spanning the spectrum of Sun Microsystems software offerings. Michael has written a number of technical whitepapers on various topics for ICAN and Java CAPS, addressing, among others, Java CAPS security configuration, WS-Security implementation in Java CAPS, and application of EAI patterns to Java CAPS solutions. He is a Java CAPS Apostle, an active contributor to Java CAPS communities and forums, and a presenter at various industry conferences. Sebastian Krueger started working on EAI software with SeeBeyond ICAN 5.0.5 in late 2005 and has since worked on all Sun Java CAPS eGate, eInsight, and eXchange product components, as well as on JMS Grid. Initially providing Java CAPS consulting services to the New Zealand market, he now works for the Inland Revenue Department of New Zealand, where he is a senior analyst programmer. Sebastian is a Sun-Certified Java Programmer and an LPI-Certified Linux Professional. Brendan Marry has over 10 years of experience in IT and is currently an integration solutions architect for Sun Microsystems in Auckland, New Zealand, responsible for the design and delivery of enterprise integration architectures using Java CAPS. He has over 4 years of experience at Sun, specifically around the Sun Java CAPS. Brendan worked in the Java Mobile space and Java Enterprise space in Europe before immigrating to New Zealand and joining Sun. He enjoys providing project management and solution architectural advice, vision, and guidance to his clients using the Java CAPS products. Saurabh Sahai has over 13 years of experience in IT, developing enterprise-class middleware software and commercial solutions for major software vendors. Over the past 4 years, he has worked as an integration architect within the Sun SOA/EAI professional service practice, where he is responsible for the architecture and delivery of advanced Sun Java CAPS–based solutions to major commercial and government clients within Australia and New Zealand. Prior to Sun Microsystems, he worked for about 9 years as a J2EE/middleware architect for Fujitsu Australia Software Technologies, developing Java/J2EE/ C++–based middleware software for Fujitsu’s INTERSTAGE enterprise product set. He has extensive experience developing commercial J2EE applications using major application servers and open-source frameworks. Saurabh is based in Sydney, Australia, and loves listening to jazz in his spare time. Peter Vaneris has 19 years of experience in the IT industry, the last 2 in the field of Java CAPS support. Prior to working with Java CAPS, Peter specialized in system administration, monitoring, automation, and enterprise management. Andrew Walker has 18 years of experience in IT and originally joined SeeBeyond in January 1999, where he started working with one of the early EAI software products, then known as DataGate. Subsequently, he has worked with all the EAI software products released by SeeBeyond and now Sun Microsystems. Andrew has broad experience in architecting and implementing EAI and SOA solutions for customers in the Asia–Pacific region. He is currently based in Singapore and provides Java CAPS consulting services throughout the Asia–Pacific region as part of his job role in Sun Microsystems Professional Services.

Preface        xiii
Acknowledgments    xxv
About the Authors    xxvii

SECTION I: PRELIMINARIES        1
Chapter 1: Enterprise Integration Styles        3
1.1 Introduction    3
1.2 File Transfer    3
1.3 Database Sharing         4
1.4 Remote Procedure Invocation    5
1.5 Messaging        6
1.6 Service Orchestration    7
1.7 Centralized versus Distributed    8
1.8 Chapter Summary        11

Chapter 2: Java CAPS Architecture        13
2.1 Introduction    13
2.2 Historical Note    13
2.3 Context    14
2.4 Java CAPS Architecture    16
2.5 Solution Development Stages    20
2.6 Chapter Summary        23

Chapter 3: Project Structure and Deployment    25
3.1 Introduction    25
3.2 From Logical Solution to Physical Deployment    26
3.3 Project Structure Considerations    26
3.4 Backup of Development Artifacts    36
3.5 Release Management    40
3.6 Deployment Architectures    50
3.7 Command-Line Build and Deployment    54
3.8 Chapter Summary        56

SECTION II: PATTERNS REVIEW AND APPLICATION        57
Chapter 4: Message Exchange Patterns        59
4.1 Introduction    59
4.2 Document Message    60
4.3 Command Message    60
4.4 Event Message    61
4.5 Request/Reply    63
4.6 Return Address    76
4.7 Correlation    77
4.8 Message Sequence     77
4.9 Message Expiration    82
4.10 Format Indicator        86
4.11 Data Streaming    88
4.12 Message Security    90
4.13 Chapter Summary    91

Chapter 5: Messaging Infrastructure        93
5.1 Introduction    93
5.2 Java Message Service (JMS)    94
5.3 JMS Implementation Interoperability    95
5.4 Using JMS to Integrate Non-Java Environments        95
5.5 Queues versus Topics    96
5.6 Sun SeeBeyond IQ Manager    97
5.7 Resilient JMS with JMS Grid     119
5.8 Competing Consumers    127
5.9 Point-to-Point Channel     131
5.10 Publish-Subscribe Channel     132
5.11 Datatype Channel     132
5.12 Invalid Message Channel     136
5.13 Dead Letter Channel     136
5.14 Guaranteed Delivery     140
5.15 Channel Adapter     150
5.16 Messaging Bridge     151
5.17 Message Bus     157
5.18 Chapter Summary     158

Chapter 6: Message Routing         161
6.1 Introduction     161
6.2 Overview         161
6.3 Fixed Router     163
6.4 Content-Based Router     165
6.5 Message Filter     168
6.6 Recipient List     169
6.7 Splitter     171
6.8 Aggregator     172
6.9 Resequencer     173
6.10 Composed Message Processor     175
6.11 Scatter-Gather     175
6.12 Routing Slip     176
6.13 Process Manager     177
6.14 Message Broker         177
6.15 Chapter Summary     178

Chapter 7: Message Construction         179
7.1 Introduction     179
7.2 Message     179
7.3 Object Type Definitions     180
7.4 Envelope Wrapper     188
7.5 Chapter Summary     202

Chapter 8: Message Transformation         203
8.1 Introduction     203
8.2 Envelope Wrapper     203
8.3 Content Enricher     203
8.4 Content Filter     204
8.5 Claim Check     205
8.6 Normalizer     206
8.7 Canonical Data Model     207
8.8 Chapter Summary     208

Chapter 9: Messaging Endpoints         209
9.1 Introduction     209
9.2 Messaging Gateway     209
9.3 Transactional Client     210
9.4 Polling Consumer     211
9.5 Event-Driven Consumer     216
9.6 Competing Consumers     217
9.7 Message Dispatcher     218
9.8 Selective Consumer     219
9.9 Durable Subscriber     219
9.10 Idempotent Receiver     220
9.11 Service Activator     223
9.12 Chapter Summary     225

Chapter 10: System Management         227
10.1 Introduction     227
10.2 Java CAPS Monitoring and Management     227
10.3 Solution-Specific Management     317
10.4 Chapter Summary     331

SECTION III:  SPECIALIZED JAVA CAPS TOPICS         333
Chapter 11:  Message Correlation         335
11.1 Introduction    335
11.2 Overview         336
11.3 JMSCorrelationID     337
11.4 eInsight Correlations     337
11.5 eInsight Correlation Processor: First Cut     338
11.6 Correlation Identifier     343
11.7 eInsight Correlation Processor: Second Cut     344
11.8 Derived Correlation Identifiers     349
11.9 Derived Correlation Identifiers: Alternative     354
11.10 Message Relationship Patterns         357
11.11 eGate Correlation with Dynamic Selectors     366
11.12 Chapter Summary     369

Chapter 12: Reusability         371
12.1 Introduction     371
12.2 Using JMS Request/Reply     371
12.3 Using New Web Service Collaborations         372
12.4 Using eInsight Subprocesses for Reusability     373
12.5 Using eInsight Web Services for Reusability     378
12.6 eInsight Service Process Reusability Note     382
12.7 Chapter Summary     382

Chapter 13: Scalability and Resilience         383
13.1 Introduction     383
13.2 Distributing Components     383
13.3 Exception Handling     388
13.4 Compensation     394
13.5 High-Availability Architecture     395
13.6 Chapter Summary     407

Chapter 14: Security Features         409
14.1 Introduction     409
14.2 HTTP Proxy Server Configuration     409
14.3 HTTP Basic Authentication     410
14.4 Secure Sockets Layer (SSL, TLS)     415
14.5 Secure Batch FTP Variants     433
14.6 Chapter Summary     435

Bibliography     437
Index     445

Erscheint lt. Verlag 1.5.2008
Verlagsort Upper Saddle River
Sprache englisch
Maße 184 x 242 mm
Gewicht 920 g
Themenwelt Informatik Programmiersprachen / -werkzeuge Java
Mathematik / Informatik Informatik Web / Internet
ISBN-10 0-13-713071-6 / 0137130716
ISBN-13 978-0-13-713071-9 / 9780137130719
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich