InfoQ

News

SCA and JBI, Best of Both Worlds?

Posted by Srini Penchikala on May 07, 2008 01:30 PM

Community
Java,
SOA
Topics
SOA Appliance ,
SOA Platforms
Tags
JBI ,
JavaOne 2008 ,
Java One ,
Service Component Architecture

At JavaOne 2008 conference, Jos Dirksen and Tijs Rademakers did a presentation on using Service Component Architecture (SCA) and Java Business Integration (JBI) frameworks together to get the best of both worlds. SCA defines a service-based model for construction, assembly and deployment of network of services to distributed runtime environments. JBI specification provides a standard for integrating the application components and orchestrating the services. Using a sample "JavaOne Event Session SCA service" application, Jos and Tijs demonstrated on how to deploy an SCA application as a Service Unit (SU) on a JBI container. The sample application used SCA components written in Java, Spring configuration, and JavaScript and expose the service components to an Apache Tuscany server.

In another SCA related session, Mike Edwards gave an overview of SCA architecture model. He talked about key benefits of SCA, four elements of SCA design and implementation (Assembly, Client and Implementation Specification, Binding and Policy Framework), and SCA composition scenarios (Top-down and Bottom-up composition). He also talked about the abstract policy declaration option for defining the security policies in the enterprise and associate the policies with SCA components using annotations like @Confidentiality and @Integrity.

SCA model promotes separation of concerns so the developers can focus on the business logic when writing the components and use SCA bindings to implement the infrastructure concerns like transactions, security etc. These SCA bindings can be managed at a fine-grained level (method, protocol or transport level). Mike said that SCA is gaining the industry support with projects like Apache Tuscany, Eclipse SOA Tools Project, and vendor implementations from IBM WebSphere, Oracle Fabric, BEA, Roguewave and TIBCO.

Apache Tuscany is not a JBI container. by Charalampos Routis Posted May 8, 2008 5:00 PM
Re: Apache Tuscany is not a JBI container. by Srini Penchikala Posted May 9, 2008 11:02 AM
Re: Apache Tuscany is not a JBI container. by Tijs Rademakers Posted May 12, 2008 1:16 PM
Re: Apache Tuscany is not a JBI container. by Srini Penchikala Posted May 14, 2008 2:02 PM
Presentation resources by Charuka Silva Posted May 27, 2008 3:37 PM
  1. Back to top

    Apache Tuscany is not a JBI container.

    May 8, 2008 5:00 PM by Charalampos Routis

    ".. The sample application used SCA components written in Java, Spring configuration, and JavaScript and expose the service components to an Apache Tuscany server (JBI container). " Apache Tuscany is not a JBI container.

  2. Back to top

    Re: Apache Tuscany is not a JBI container.

    May 9, 2008 11:02 AM by Srini Penchikala

    Hi Charalampos, You are right. Tuscany doesn't support JBI spec. I removed the reference from the post. Thanks for the comment.

  3. Back to top

    Re: Apache Tuscany is not a JBI container.

    May 12, 2008 1:16 PM by Tijs Rademakers

    Hello Charalampos, To be more precise, we used Apache ServiceMix for the JBI container implementation and Apache Tuscany as the SCA Java implementation. So we actually implemented a SCA Service Engine that uses Tuscany and deployed that Service Engine to ServiceMix. Best regards, Tijs

  4. Back to top

    Re: Apache Tuscany is not a JBI container.

    May 14, 2008 2:02 PM by Srini Penchikala

    Hi Tijs, Thanks for the clarification. The presentation you and Jos did was very informative.

  5. Back to top

    Presentation resources

    May 27, 2008 3:37 PM by Charuka Silva

    Hi Tijs, Will it be possible to get the presentation resources, if you have any? Thanks

Educational Content

Bindings, Platforms, and Innovation

This presentation focuses on the Internet and separating myth from fact, history from the future, and the mundane from the imaginative. Bob Frankston presents a vision of what could and should be.

Orchestrating Long Running Activities with JBoss / JBPM

This article explores the use of JBoss and jBPM to implement design solutions that effectively address the issue of orchestrating long running activities.

Neo4j - The Benefits of Graph Databases

This presentation covers the use of graph databases as an optimal solution for data that is difficult to fit in static tables, rapidly evolving data or data that has a lot of optional attributes.

Realistic about Risk: Software development with Real Options

This session introduces Real Options and shows how it can help in running your project. Real Options is a decision-making process that can be used to manage risk.

Communication Flexibility Using Bindings

This article discusses the use of bindings on services and references (including the instance of non-configured bindings) as the means to implement SCA communications in a Web and SOA environment.

Writing DSLs in Groovy

After a short introduction to DSLs, Scott Davis plays with the keyboard showing how to approach the creation of a DSL by typing working snippets of Groovy code that get executed.

Scaling Agile with C/ALM (Collaborative Application Lifecycle Management)

IBM Rational and InfoQ present, Scaling Agile with C/ALM, an eBook showing organizations how to become “finely tuned software delivery machines” by enabling team integration and scaling.

Concurrent Programming with Microsoft F#

Amanda Laucher presents a real life enterprise application written in F#. She shows actual code snippets, explaining design decisions and suggesting how to use some of the F# constructs.