Tuscany SCA in Action
Simon Laws, Mark Combellack, Raymond Feng, Haleh Mahbod, Simon Nash
  • February 2011
  • ISBN 9781933988894
  • 472 pages
  • printed in black & white

A great resource.

Jeff Davis, Author of "Open Source SOA"

Tuscany SCA in Action is a comprehensive, hands-on guide for developing technology-agnostic, extensible applications. By following a travel-booking example throughout the book, you'll learn how to model, compose, deploy, and manage applications using SCA. The book emphasizes practical concerns, like effectively using Tuscany's supported bindings and protocols and integrating with standard technologies like Spring and JMS to save development time and cost.

Table of Contents show full



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


About the Technology

Tuscany SCA is a technology-neutral infrastructure for building composite applications based on the Service Component Architecture standard. It manages the protocols and other application plumbing, enabling you to focus on business logic and the relationship between services. The resulting applications are more flexible, scalable, and maintainable.

What's inside

  • Introduction to Tuscany
  • Coverage of Service Component Architecture
  • Practical examples and techniques
  • Written by core Tuscany committers

About the reader

This book is for developers interested in service-oriented applications. No experience with Tuscany or SCA is required.

About the authors

Simon Laws is a member of the IBM Open Source SOA project focused on building the Java runtime for Service Component Architecture (SCA). Coauthors Mark Combellack, Raymond Feng, Haleh Mahbod, and Simon Nash are all Tuscany committers.

eBook $47.99 pdf + ePub + kindle

FREE domestic shipping on three or more pBooks

A must-have guide.

Alberto Lagna, biznology.it

The A-Z of SCA from the source.

Ara Ebrahimi, CityGrid Media

Offers insights and techniques that help you put it all together.

Doug Warren, Java Web Services

Start being productive with Tuscany SCA right away.

Jeff Anderson, Deloitte