Network Deployment (Distributed operating systems), v8.0 > Applications > SCA composites
SCA in WAS: Overview
Support for Service Component Architecture (SCA) offers a way to construct applications based on Service-Oriented Architecture (SOA). The support uses the Apache Tuscany open-source technology to provide an implementation of the published SCA specifications.
SCA is defined in a set of open specifications produced by IBM and other industry leaders through the Open SOA Collaboration (OSOA).
We can use SCA to assemble and compose existing services in your enterprise. The key principle of SOA demonstrated by SCA support is the ability to use your existing services to create new ones.
Another key objective of SCA is to highlight the ease-of-use characteristics of SCA service development in Java. This is accomplished by demonstrating annotated Plain-Old Java-Object (POJO) components deployed using simple JAR packaging schemes, an easy to use assembly model, and wiring abstractions that enable service definition over different transports and protocols.
Benefits of SCA
SCA enables your organization to move quickly into the world of SOA, as follows:
- Improve flexibility in application deployment
- Adapt applications quickly to reflect changes in the business environment
- Reuse the components you create in other business processes and composite applications
- Easily compose services into more complex composite applications
- Adjust solutions to accommodate varying technology offerings (that is, protocols or deployment targets) without the need to rebuild business applications
- Increase programmer productivity
- Stay focused on solving business problems, rather than getting bogged down in the individual complexities of the technologies that connect service consumers and service providers
- Use the same fundamental principles to uniformly represent existing assets and newly engineered components
- Organize service components into logical modules to hasten composite application development
- Leverage the loosely coupled service model with clear service definitions to enable developers to work independently and in parallel, for fast delivery of solutions
OSOA support
SCA in WAS follows the definition of the technology as documented by OSOA. Defining a set of compliance test suites was not part of the OSOA charter, so the implementation provided in this product uses the following specifications as guiding principles. However, IBM provides an implementation that adheres strictly to our interpretation of the specifications.
- SCA Assembly Model
- SCA EJB Session Bean Binding
- SCA Java Component Implementation
- SCA Java Common Annotations and APIs
- SCA Java EE Integration
- SCA JMS Binding
- SCA Policy Framework
- SCA Spring Implementation
- SCA Transaction Policy
- SCA Web Service Binding
See the "Unsupported SCA specifications sections" topic for restrictions and limitations that are unsupported at this time.
WebSphere support for SCA
As already noted, multiple specifications are defined at OSOA, as well as Tuscany extensions provided in open source that go beyond the basic mission of WAS. Each vendor can decide which aspects of SCA apply to their product. For WAS, the focus is on enabling compositions as services, Java components, and integration of key qualities of service-like transactions and security.
SCA can enable mediations, business rules, and business process execution language to be treated as any other service, and while WAS provides the mechanisms to wire services that are implemented in those languages and environments, the product does not provide native support to host those kinds of service implementations.
SCA support includes the following:
- POJO (Java Object) service-component implementations, including support for annotations
- Asynchronous capability
- Recursive composition model support
- Support for SCA specifications
- Support for SCA services developed from existing WSDL files or Java code
- Deployment of SCA composites in business-level applications
- SCA authorization and security identity policies
- PassByReference optimization for SCA applications
- Several binding types, including web services binding, SCA default binding, EJB, JMS, Atom, and HTTP bindings
- Support for Java Architecture for XML Binding (JAXB) data bindings in SCA applications
- SCA annotations for Java EE web modules, session beans, and message-driven beans
- Preview of native SCA deployment
- Spring 2.5.5 containers in SCA applications
- New feature: OSGi applications as SCA implementations
- Service Data Objects 2.1.1
- Sample SCA composites compiled specifically for use with the product
Related
Unsupported SCA specification sections
SCA components
SCA composites
SCA contributions
SCA domain
Samples, v8.0 information center
Develop SCA services from existing WSDL files
Develop SCA services with existing Java code
Develop SCA service clients
Specify bindings in an SCA environment
Use JAXB for XML data binding
Use existing Java EE modules and components as SCA implementations
Use Spring 2.5.5 containers in SCA applications
Use SCA authorization and security identity policies
Use PassByReference optimization in SCA applications
Deploy and administering business-level applications
Related
Specifications and API documentation Concept topic