Tuesday, October 27, 2009

Tuscany Sessions at ApacheCon US 2009


ApacheCon US 2009 is just around the corner, and we are going to have several Apache Tuscany related sessions.

SCA, Java EE, Spring and Web 2.0 Come Together - Service assembly with Apache Tuscany SCA
Wed, 04 November 2009 11:00, by Luciano Resende

Apache Tuscany provides an easy-to-use open source services infrastructure for building, assembling, deploying and running SOA solutions based on the Service Component Architecture (SCA) specifications from OASIS. The Apache Tuscany project goes beyond the SCA specification and is an environment for innovative ideas around SOA, for example it extends SCA to work with web2.0 and OSGI. Apache Tuscany is integrated with other Apache technologies such as Tomcat, Axis2, Geronimo, BSF, Ode, XMLBeans and Abdera.This talk will provide a short overview of SCA and the Apache Tuscany project and will mainly focus on an enterprise integration example to demonstrate how to take advantage of SCA and Tuscany to describe, assemble and deploy an end-to-end SOA solution.

This talk is directed at those who are building distributed solutions from connected services and want to understand how SCA can help.

The presenters will use their experience of working with the Apache Tuscany project and its users to illustrate:
• Partitioning of the application into components and services
• Exploitation of a variety technologies to implement components including Java EE, Spring and Web2.0
• Use of different communication technologies such as web services, JSON-RPC
• Configuration of policy to control consistent quality of service across the distributed application
• Deployment to distributed runtimes with varying capabilities including Java EE containers, web browsers and command line JSE nodes



Distributed OSGi with SCA using Apache Tuscany
Wed, 04 November 2009 13:30 by Raymond Feng

OSGi goes beyond service invocations in a single JVM with the introduction of RFC 119 - Distributed OSGi. It will enable 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 Web Service client, potentially on a remote computer, to find and access a service running in the "local" OSGi JVM (i.e. an OSGi deployment can accept service invocations from remote OSGi bundle or external environments). The distributed computing functionality is added to the OSGi programming model without additional APIs or concepts as the distribution layer will be mostly transparent to OSGi developers by configuration.

SCA (Service Component Architecture) provides a technology-neutral approach to abstract business logic into components and assemble 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 to be 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. The latest version of Tuscany runtime is fully built on top of OSGi as the foundation. We recently added the OSGi RFC 119 support.

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. The readers will understand the basic ideas behind distributed OSGi in the concrete example and the power of Tuscany SCA for service composition.



Tuscany: Applying OSGi modularity after the fact
Fri, 06 November 2009 15:00 by Luciano Resende

Apache Tuscany is an open source project that simplifies the development, deployment and management of distributed applications built as compositions of service components.It is based on the Service Component Architecture specifications being defined by the OASIS Open SCA Collaboration. Tuscany was built with a modular architecture, using a different approach from that of OSGi. In 2008 an effort was started to integrate Tuscany with OSGi. As part of this we undertook an investigation into how to apply OSGi modularity to the Tuscany runtime so that clean boundaries between modules are enforced and different versions of the same library can coexist.This involved analyzing the existing Tuscany modularity which turned up lots of interesting information about the linkages between the various sub-components. This understanding was then used to determine how to map Tuscany into a suitable form for use as OSGi bundles, including prototyping various levels of decomposition granularity. This presentation will share the experiences of analyzing and modularizing an existing project using OSGi. It will discuss what to expect when approaching modularizing existing projects, the tools (and it's caveats) for aiding analysis and also best practices for applying OSGi modularity. Beyond the OSGi enablement for the runtime, we are also going to cover how to integrate OSGi and SCA at the application level.

Labels: , ,

Thursday, October 08, 2009

Tuscany Java SCA 1.5.1 Released



The Apache Tuscany team are pleased to announce the 1.5.1 release of the
Java SCA project.

Apache Tuscany provides a runtime environment based on the Service
Component Architecture (SCA). SCA is a set of specifications aimed at
simplifying SOA application development. These specifications are
being standardized by OASIS as part of the Open Composite Services
Architecture (Open CSA).

This 1.5.1 release is a maintenance release over the previous releases
and includes numerous bug fixes and enhancements, see the
RELEASE_NOTES and CHANGES file for details, and to download the
distributions please go to:

http://tuscany.apache.org/sca-java-releases.html

To find out more about OASIS Open CSA go to:

http://www.oasis-opencsa.org

Apache Tuscany welcomes your help. Any contribution, including code,
testing, contributions to the documentation, or bug reporting is
always appreciated. For more information on how to get involved in
Apache Tuscany visit the website at:

http://tuscany.apache.org

Thank you for your interest in Apache Tuscany!

Labels: ,

Tuesday, October 06, 2009

Article: Design and develop SCA components using the Spring Framework, Part 1: The trifecta: Spring, SCA, and Apache Tuscany

Nice article from "Ramkumar Ramalingam", a member of the Tuscany Community.


In this "Design and develop SCA components using the Spring Framework" series, learn how Service Component Architecture (SCA) and the Spring Framework effectively combine to build distributed service applications. This first article outlines the benefits of combining SCA and Spring. Learn how to design and develop your SCA components using the Spring Framework, how to expose Spring beans as an SCA service, and how to access SCA services and properties within your Spring applications. The example in this article uses the Apache Tuscany SCA Java™ technology runtime.

Read full article...

Labels: ,

Variant of Store scenario up and running in Google App Engine !!!


A variant of the Store scenario is now deployed as a distributed application in Google App Engine. The scenario consist of a fruit catalog hosted as one appengine application (tuscany-store-catalog) and the front end ui is hosted as another appengine application (tuscany-store) that has a catalog aggregator used to aggregates multiple catalog references using the JSON-RPC binding. Note that we can easily add new new catalog references hosted either in another appengine applications or other could types.



Note that this is all based on the new Tuscany 2.x runtime, which is based on the OASIS SCA 1.1 draft specifications.

If you got interested, the store and store-catalog applications are available in the sca cloud tutorial sandbox.

Hopefully I can soon post more news of a more heterogeneous cloud scenario working.

Labels: , , ,