ApacheCon US 2009 Session
Distributed OSGi with SCA using Apache Tuscany
- Raymond Feng
- Wed, 04 November 2009 13:30
- No Materials Available
OSGi is no longer confined to a single JVM in its service invocations, since the introduction of RFC 119 - Distributed OSGi. This RFC enables an OSGi bundle deployed in a JVM to invoke a service (either OSGi or non-OSGi) in another JVM or process, potentially on a remote computer accessed via a network protocol. Meanwhile, an OSGi service deployed in another JVM or a non-OSGi program such as a Web Service client, can find and access a service running in the "local" OSGi JVM. The distributed computing functionality is added to the OSGi programming model without additional APIs or concepts, and the distribution layer is mostly transparent to OSGi developers by configuration. Service Component Architecture (SCA) provides a technology-neutral approach to abstracting business logic into components, and assembling them into composite applications. It greatly simplifies the component communications using declarative bindings. QoS requirements can be uniformly declared as SCA intents, which can be mapped and realized using different stacks. SCA is a great fit as a distribution provider for distributed OSGi. Apache Tuscany is an open source project that implements the SCA specifications. It provides integrations of implementation types (such as Java, Scripting, BPEL, Spring, OSGi and JEE) and binding types (such as Web Service, JMS, EJB, CORBA, RMI, JSONRPC, and ATOM) as the infrastructure for SCA programming. We recently added support for OSGi RFC 119. In this session, we will teach you how to develop a distributed OSGi application to leverage the SCA capabilities using Apache Tuscany. A calculator scenario will be used to demonstrate the distributed OSGi service invocations using RMI and Web Service protocols. We will also explain how to model an OSGi bundle as an SCA component and configure the SCA composite to provide communications between services. You'll leave this session with an understanding of the basic ideas behind distributed OSGi and the power of Tuscany SCA for service composition.





















