contents
preface
acknowledgments
about this book
about the authors
about the title
about the cover illustration
Part 1 Understanding Tuscany and SCA
1 Introducing Tuscany and SCA
1.1 The big picture
1.2 Designing a sample composite application
1.3 Implementing a composite application
1.4 Working with other SOA technologies
1.5 Summary
2 Using SCA components
2.1 Implementing an SCA component
2.2 Using components to provide services
2.3 Connecting components using references and wires
2.4 Configuring components using properties
2.5 Enabling communication flexibility using bindings
2.6 Summary
3 SCA composite applications
3.1 Running a composite application in a single process
3.2 Understanding the SCA domain
3.3 Running a distributed composite application
3.4 Using SCA composites as application building blocks
3.5 Summary
Part 2 Using Tuscany
- 4 Service interaction patterns
- 4.1 Understanding the range of SCA service interaction patterns
- 4.2 Remote interaction
- 4.3 Local interaction
- 4.4 Request response interaction
- 4.5 One-way interaction
- 4.6 Callback interaction
- 4.7 Conversational interaction
- 4.8 Summary
- 5 Implementing components using the Java language
- 5.1 Defining a Java component implementation
- 5.2 Using SCA annotations in Java implementations
- 5.3 Services and references with Java interfaces
- 5.4 Java component services
- 5.5 Java component references
- 5.6 Java component properties
- 5.7 Java component instance creation and scope
- 5.8 Making callbacks
- 5.9 Holding conversations
- 5.10 Passing SCA service references
- 5.11 Handling errors
- 5.12 Summary
- 6 Implementing components using other technologies
- 6.1 Implementing components using Spring
- 6.2 Implementing components using BPEL
- 6.3 Implementing components using scripts
- 6.4 Summary
- 7 Connecting components using bindings
- 7.1 Introduction to SCA bindings
- 7.2 Demonstrating SCA bindings
- 7.3 Connecting component services with binding.sca
- 7.4 Connecting component services with web services
- 7.5 Connecting component services with CORBA
- 7.6 Connecting component services with RMI
- 7.7 Connecting component services with JMS
- 7.8 Connecting to EJBs
- 7.9 Summary
- 8 Web clients and Web 2.0
- 8.1 Servlets as SCA component implementations
- 8.2 Writing web component implementations using JSPs
- 8.3 HTML pages as SCA component implementations
- 8.4 Exposing file system resources
- 8.5 Exposing component services as Atom and RSS feeds
- 8.6 Referencing Atom and RSS feeds
- 8.7 Summary
- 9 Data representation and transformation
- 9.1 Data exchange between SCA components
- 9.2 Representing data within component implementations
- 9.3 Describing data contracts within SCA compositions
- 9.4 Data transformations
- 9.5 The Tuscany databinding framework
- 9.6 Summary
- 10 Defining and applying policy
- 10.1 An overview of policy within an SCA domain
- 10.2 The policy runtime
- 10.3 Using intents and policy sets for implementation policy
- 10.4 Using intents and policy sets for interaction policy
- 10.5 Other features of the SCA Policy Framework
- 10.6 Tuscany intents and policy sets
- 10.7 Summary
Part 3 Deploying Tuscany applications
- 11 Running and embedding Tuscany
- 11.1 Understanding the Tuscany runtime environment
- 11.2 Running Tuscany standalone
- 11.3 Running Tuscany using APIs
- 11.4 Running Tuscany with web applications
- 11.5 Configuring distributed nodes
- 11.6 Embedding Tuscany with a managed container
- 11.7 Summary
- 12 A complete SCA application
- 12.1 Getting ready to run the application
- 12.2 Assembling the travel-booking application
- 12.3 The travel-booking application in a distributed domain
- 12.4 Hints and tips for building composite applications
- 12.5 Summary
Part 4 Exploring the Tuscany runtime
- 13 Tuscany runtime architecture
- 13.1 An overview of the Tuscany architecture
- 13.2 A structural perspective of the Tuscany architecture
- 13.3 A behavioral perspective of the Tuscany architecture
- 13.4 Summary
- 14 Extending Tuscany
- 14.1 The high-level view of developing a Tuscany extension
- 14.2 Developing a POJO implementation type
- 14.3 Developing a new binding type
- 14.4 Summary
-
appendix A Setting up
appendix B What’s next?
appendix C OSOA SCA specification license
appendix D Travel sample license
index