Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3
Section
borderfalse
Column
width12%15%
Include Page
TUSCANY: SCA Java SCA Subproject MenuTUSCANY:
SCA Java SCA Subproject Menu
Column
width88%85%

Tuscany SCA Java

SCA Subproject

Tuscany Java SCA provides the infrastructure to develop and run SCA based applications. At the very high level, Java SCA can be divided into a core kernel and extensions. The kernel supports the SCA assembly model, Tuscany value-add features and simple extension point to add extensions. The kernel is designed to be embedded in, or provisioned to, a number of different host environments.

Tuscany extension points allow any binding type, component implementation (programming model), policy and data binding to be easily added to Tuscany. The Tuscany community has contributed the extensions that are shown below. An extension becomes available for the latest Kernel release as volunteers test and enhance the extension to work with the latest release.

Bindings - used for services and references

Apache Axis2
Celtix (this is obsolete since Apache CXF should replace it)
JMS (tested with Apache ActiveMQ)
JSON-RPC

Component Implementations

Java components (as described in the SCA Java C&I spec)
Spring assemblies
Scripting with JSR 223
JavaScript
Groovy
Ruby
BPEL (a prototype using Apache ODE)

Data Bindings - for handling data

JAXB
SDO
Axiom
Caster
XMLBeans

...

is a lightweight runtime that is designed to run standalone or provisioned to different host environments. The modularized architecture allows users to pick and choose modules that cater to their business needs therefore resulting in small footprint.

At a high level,Tuscany Java SCA infrastructure can be divided into two categories of modules: core and extensions. The core modules consist of selectable components that provide support for SCA and data handling as well as the core runtime. The core runtime includes functions such as loading system and application services, building and managing composites. The extension category consists of a set of selectable modules that support integration of various technologies that are required in SOA environment. This includes support for various protocols through bindings, programming languages through implementations, data types, security and transaction through policies. This whole thing constitutes an SCA node. An SCA composite application can be spread across multiple nodes in a cloud or be run on a single node. This administrative scope is referred to as the SCA domain.
Image Added
For a complete list of supported extensions please see extension documentation . The extensible architecture of SCA Java allows any missing extension to be easily added.

Tuscany SCA Java has implemented SCA specifications 1.0 defined by www.osoa.org in its 1.x code line. Tuscany community is working on compliance with OASIS version of SCA in 2.x code line. To document the work in progress we have created a roadmap page on our wiki Java SCA Roadmap Wiki Page. Please consider yourself invited to get involved in any of these items or suggest new ones that you want to work on.

(lightbulb) Build your first SCA application in 10 minutes! Give it a try